I am tying to cat all values, but seems i am doing it wrong, could you please help me?
proc sql;
create table cars11 as
select make,
type,
Mean (horsepower) as Mean
From sashelp.cars
Group by make, type;
quit;
proc transpose data =new;
var Mean;
run;
data new1;
length MeanM $200.;
set new;
MeanM=strip(put(col1,best.))||","||strip(put(col2,best.));
run;
You can get it for example like this:
proc sql;
create table cars11 as
select make,type,Mean(horsepower) as Mean
from sashelp.cars
group by make,type
;
quit;
proc transpose data=cars11 out=means;
var Mean;
run;
data means1;
set means;
length MeanM $ 32767;
MeanM=catx(",", of COL:);
keep MeanM;
run;
but as @PeterClemmensen wrote, I don't get why ?
If you try to use it in some sort `x IN (...)` condition in SQL, why not just use a subquery? (The only reason for such step would be that you can't pass the data in table and you have to push it in a code.)
Bart
i need them but they must be separated with commas,
I understand. But why?
You can get it for example like this:
proc sql;
create table cars11 as
select make,type,Mean(horsepower) as Mean
from sashelp.cars
group by make,type
;
quit;
proc transpose data=cars11 out=means;
var Mean;
run;
data means1;
set means;
length MeanM $ 32767;
MeanM=catx(",", of COL:);
keep MeanM;
run;
but as @PeterClemmensen wrote, I don't get why ?
If you try to use it in some sort `x IN (...)` condition in SQL, why not just use a subquery? (The only reason for such step would be that you can't pass the data in table and you have to push it in a code.)
Bart
Registration is now open for SAS Innovate 2025 , our biggest and most exciting global event of the year! Join us in Orlando, FL, May 6-9.
Sign up by Dec. 31 to get the 2024 rate of just $495.
Register now!
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.
Ready to level-up your skills? Choose your own adventure.