-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Sampling #269
Comments
Yes, you probably need the rosenblatt transform and it's inverse. But I'm not quite sure how the already existing data comes into play here. Are these data for a subset of variables? In that case, you want to simulate conditionally on the existing variables. Section 4.2 in this article does this for example. |
Yes, I want to do a conditional sampling. These days I tried with rvinecopulib. I found the pseudo_obs of a matrix x is different from what rosenblatt fuction gives. It seems I can't solve it with rvinecopulib. |
Indeed the pseudo_obs and rosenblatt functions do different things. The first converts to uniform variables without changing the dependence, the second to independent uniform variables. For conditional sampling you need the second. |
Thank you Professor Nagler. I've read the paper and found it difficult for me. I'll keep on working on it. Thank you again. |
To follow up on this conversation, Section 4.2 of the attached paper specifies that, to conditionally sample using known values for a subset of variables, the other, unknown variables should be set to arbitrary [0,1] values before applying the Rosenblatt transform (step 2). While these (Rosenblatt transformed) arbitrary values are replaced by independent uniformly distributed values in Step 3, the arbitrary values from Step 2 will influence the Rosenblatt transformed values of the known variables (I believe), which in turn will influence the value of the unknown variables when applying the inverse Rosenblatt transform in Step 6. So, what arbitrary values should be used for the unknown variables in Step 2? Thank you in advance for clarification. |
The values are really arbitrary and should not influence the transform of the other variables if the structure is set up correctly. In particular, the variables you condition on have to be on the top right of the diagonal. As a sanity check you can use |
This is a different package (VineCopula instead of rvinecopulib) which uses a different convention for the structure matrix. Here, the variables you condition on have to be bottom right on the diagonal. Please ask questions about VineCopula in the respective repository. |
Hi,
I'm using rvine fuction to generate samples. And I find that the samples are generated radomly. But before sampling, actually I have some data already(sampled by other method), so they are fixed. I want to based on these data and then use vine method to generated the other correlated variables. I think I need to do a rosenblatt tranformation or something. I guess:
Is it right? What else should I do?
The text was updated successfully, but these errors were encountered: