SAS Programming

DATA Step, Macro, Functions and more
BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
as00502
Calcite | Level 5

I am trying to create different data sets on SAS with specifed variance/covariances on SAS university edition, but I am very unsure how to go about this. 

Thank you! 

1 ACCEPTED SOLUTION

Accepted Solutions
Reeza
Super User

Your trying to simulate data? If so read Rick Wicklins blog and/or book on simulating data in SAS. 

View solution in original post

4 REPLIES 4
Reeza
Super User

Your trying to simulate data? If so read Rick Wicklins blog and/or book on simulating data in SAS. 

as00502
Calcite | Level 5

I have used Rick Wilkins' method to simulate multivariate normal data with a set covaraince matrix. I am ultimately trying to carry out mixed model analysis on this data. I am unsure how to split it up into groups, as it is already split into 'x1'...'x4'. This is the code I am using, if you happen to have any ideas?

 

proc iml;
Mean = {1, 2, 3, 4};
Cov = {0.5 0 0 0, 0 0.5 0 0, 0 0 0.5 0, 0 0 0 0.5};
N = 1000;
call randseed(123);
X = RandNormal(N, Mean, Cov);
SampleMean = mean(X);
SampleCov = cov(X);
varNames = "x1":"x4";

print SampleMean[colname=varNames],
SampleCov[colname=varNames rowname=VarNames];
create MVN from X[colname=varNames];
append from X;
close MVN;
quit;

Rick_SAS
SAS Super FREQ

The example you show uses RANDNORMAL function to simulate correlated variables. Presumably you also want to generate correlated observations? The book Simulating Data with SAS covers mixed models in Chapter 12, pp. 230-242.  The article "Constructing common covariance structures" (from Chapter 10) shows some related computations.

PGStats
Opal | Level 21

You will need to specify the distribution as well. Check out the RAND() function.

PG

sas-innovate-white.png

Our biggest data and AI event of the year.

Don’t miss the livestream kicking off May 7. It’s free. It’s easy. And it’s the best seat in the house.

Join us virtually with our complimentary SAS Innovate Digital Pass. Watch live or on-demand in multiple languages, with translations available to help you get the most out of every session.

 

Register now!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 4 replies
  • 1308 views
  • 0 likes
  • 4 in conversation