Great. Thanks.
DATAsp
Rhapsody,
1 data have;
2 input theta1-theta3;
3 datalines;
NOTE: The data set WORK.HAVE has 4 observations and 3 variables.
NOTE: Compressing data set WORK.HAVE increased size by 100.00 percent.
Compressed is 2 pages; un-compressed would require 1 pages.
NOTE: DATA statement used (Total process time):
real time 0.17 seconds
cpu time 0.00 seconds
8 ;
9 run;
10
11 options cmplib = work.cmpar;
12
13 %let rc = %sysfunc(array2array(have, want));
WARNING: No CMP or C functions found in library work.cmpar.
ERROR: The ARRAY2ARRAY function referenced in the %SYSFUNC or %QSYSFUNC macro function is not
found.
WARNING: Argument 2 to function PUTN referenced by the %SYSFUNC or %QSYSFUNC macro function is
out of range.
[1] I do not know why this NOTE comes:
NOTE: Compressing data set WORK.HAVE increased size by 100.00 percent.
Compressed is 2 pages; un-compressed would require 1 pages.
I have not used COMPRESS option in the Data Set.
[2] WARNING: No CMP or C functions found in library work.cmpar.
As long as you have used the statement:
options cmplib = work.cmpar;
You must not get the WARNING shown above.
I reran your new Data Set and worked without ERROR or WARNING.
The output (WANT) is:
Obs trans1 trans2 trans3 1 0.2 0.7 0.500 2 0.3 0.9 0.623 3 0.5 0.6 0.150 4 0.7 0.9 0.210
Can you show source code of the Function? I can check it.
DATAsp
Build your skills. Make connections. Enjoy creative freedom. Maybe change the world. Registration is now open through August 30th. Visit the SAS Hackathon homepage.
Register today!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.