- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Dear's
I simulated a dataset bivariate wich normal distribution.
PROC IML;
N=100000;
MEAN={0.074, 0.1274};
COV={0.000302 0.000581, 0.000581 0.00156};
CALL RANDSEED(12345);
P=RANDNORMAL(N,MEAN,COV);
CREATE ESTRUTURA_1 FROM P; APPEND FROM P; CLOSE ESTRUTURA_1;
RUN;
However I would like to simulate the dataset with chi square distribution, how do I proceed?
Best regards.
Accepted Solutions
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Do you want n=100,000 observations drawn randomly from a chi-square distribution with D degrees of freedom? By using IML? Then use
proc iml;
DF = 10;
N = 100000;
x = j(N,1); /* allocate vector */
call randseed(12345); /* set random number seed */
call randgen(x, "Chisquare", DF); /* fill vector */
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Maybe you should check :
x = RAND(’CHISQUARE’,df)
Xia Keshan
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Dear Keshan,
I tried to use the
X=RAND(ÇHISQUARE',df)
But I don't know simulate a dataset with n=100000 using this command.
I tried to use the DO command, but it still fails.
Best regards.
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Do you want n=100,000 observations drawn randomly from a chi-square distribution with D degrees of freedom? By using IML? Then use
proc iml;
DF = 10;
N = 100000;
x = j(N,1); /* allocate vector */
call randseed(12345); /* set random number seed */
call randgen(x, "Chisquare", DF); /* fill vector */
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Dear Rick,
Thank's
- Mark as New
- Bookmark
- Subscribe
- Mute
- RSS Feed
- Permalink
- Report Inappropriate Content
Or, you can do it inside a datastep.
data simualation;
df=1;
call streaminit(1234567); /*initialize the seed is optional*/;
do i=1 to 100000;
chisq=rand('chisq',df);
output;
end;
run;