Hi SAS helpers!
Very new to SAS. Using SAS University Edition. Tried searching and kept finding documents about PROC MEANS and similar. What I want to do is perform operations on a column, such as subtracting the mean. What I was expecting was vectorized arithmetic. What I got was something else.
proc import datafile='/folders/myfolders/mean_dev_example.xlsx' out = mean_dev dbms = xlsx replace; run; * Subtract mean from RowPlusNoise so it looks like md_RPN; * This is a variation on what I tried; data mean_dev; set mean_dev; md2_RPN = RowPlusNoise - mean(RowPlusNoise); proc print mean_dev; run;
What I get is a column of zeros? This should be straight forward. I just don't know what I'm doing. Please assist!
Rgds.
Then you need post it at IML forum and Calling @Rick_SAS
Or you could try SQL.
proc sql;
create table want as
select RowPlusNoise - mean(RowPlusNoise) as md2_RPN
from mean_dev ;
quit;
Then you need post it at IML forum and Calling @Rick_SAS
Or you could try SQL.
proc sql;
create table want as
select RowPlusNoise - mean(RowPlusNoise) as md2_RPN
from mean_dev ;
quit;
There is proc stdize for this specific purpose:
data have;
input row rowplusnoise;
datalines;
1 1.479076657
2 2.295673384
3 3.36174835
4 4.430062053
5 5.592595732
6 6.056510293
7 7.119216833
8 8.510822811
9 9.410188941
10 10.74169849
;
proc stdize data=have out=want method=mean oprefix=o_ sprefix=centered_;
var rowplusnoise;
run;
proc print data=want; run;
Obs. row o_rowplusnoise centered_rowplusnoise 1 1 1.4791 -4.42068 2 2 2.2957 -3.60409 3 3 3.3617 -2.53801 4 4 4.4301 -1.46970 5 5 5.5926 -0.30716 6 6 6.0565 0.15675 7 7 7.1192 1.21946 8 8 8.5108 2.61106 9 9 9.4102 3.51043 10 10 10.7417 4.84194
As KSharp indicated, if you prefer working with vectorized operations, you can use PROC IML, which is included as part of SAS UE.
Here are a few tips to get started learning the SAS/IML language.
SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!
What’s the difference between SAS Enterprise Guide and SAS Studio? How are they similar? Just ask SAS’ Danny Modlin.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.