BookmarkSubscribeRSS Feed
kilasue
Calcite | Level 5

In IML, following code gives an error:

proc iml;
	i=5;
	theta={i*3,4};
quit;

 This code has no error. But it doesn't run as expected:

proc iml;
	i=5;
	j=i*3;
	theta={j,4};
quit;

What's the reason?

I want to create a column with elements {15,4}.

3 REPLIES 3
PeterClemmensen
Tourmaline | Level 20

No, I don't think the syntax is supported like that. Also, I think the second block of code is much prettier, so why not just go with that?

IanWakeling
Barite | Level 11

The reason it runs without error is that IML interprets { j , 4 } as a declaration of a character vector.  The easiest way to get what you want is to use a concatenation operator:

 

theta = j // 4;