BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
panda
Quartz | Level 8

Hi all - 

 

I want to create a matrix with 24 rows and 120 columns, the ideal dataset looks like this:

A0 A1 A2 A3   ....A59 B0 B1 B2 B3 ... B59

0   0   0     0         0      0   0   0   0        0

RIght now cannot figure out how to name the columns, my code is attached here (this code does not work):

proc iml;
c = j(24, 120, 0);
varNames = "A0" : "A59"; 
varNames = "B0" : "B59";
create data from c [colname = varNames];
append from c;
close data;

Create A columns and B columns and merge them together might help but eventually I want to create a matrix from A to Z, which has 1440 columns, so that approach might not be good enough. 

Any idea? Thanks!!

 

1 ACCEPTED SOLUTION

Accepted Solutions
WarrenKuhfeld
Ammonite | Level 13

Just concatenate your name vectors:

 

proc iml;
c = j(24, 120, 0);
varNames = ("A0" : "A59") || ("B0" : "B59");
create data from c [colname = varNames];
append from c;
close data;
quit;

proc contents varnum; ods select position; run;

View solution in original post

1 REPLY 1
WarrenKuhfeld
Ammonite | Level 13

Just concatenate your name vectors:

 

proc iml;
c = j(24, 120, 0);
varNames = ("A0" : "A59") || ("B0" : "B59");
create data from c [colname = varNames];
append from c;
close data;
quit;

proc contents varnum; ods select position; run;

sas-innovate-2026-white.png



April 27 – 30 | Gaylord Texan | Grapevine, Texas

Registration is open

Walk in ready to learn. Walk out ready to deliver. This is the data and AI conference you can't afford to miss.
Register now and lock in 2025 pricing—just $495!

Register now

From The DO Loop
Want more? Visit our blog for more articles like these.
Discussion stats
  • 1 reply
  • 2046 views
  • 2 likes
  • 2 in conversation