将 t 分数添加到 sas 中的现有数据集

add t score to existing data set in sas

如何在 SAS 的现有数据集中添加带有分数的新变量?

proc standard data=orig out=age_t mean=50 std=10; 
var age ;
run; 

我想在原始数据集中创建一个新变量 age_t,每个观察的 t 分数

Left Join 您的原始 table 与 Proc Standard 输出。完整代码如下:

创建虚拟数据:

data orig;
input name $ age ;
datalines;
jackieChan 50
Tom 70
Lee 45
Tim .
Sarah 29
Rose 33
;

将标准输出保存到新的 table "stnd_age":

proc standard data=orig out=stnd_age mean=50 std=10; 
var age ;
run;

左加入 Orig table 与 stnd_age:

proc sql;
create table want as 
select orig.* , stnd_age.age as age_t
from orig left join stnd_age on orig.name=stnd_age.name;
quit;

结果:

name=Sarah age=29 age_t=39.873841923 
name=Tim age=. age_t=. 
name=Tom age=70 age_t=65.189237115 
name=jackieCh age=50 age_t=52.840263851