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
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
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.