📄 denf_new_variable.sas
字号:
***********************************
* Dr. Baokun Li *
* Creating New Variables *
* June 28th, 2007 *
***********************************;
*定义3个新变量 ;
DATA tdata;
INFILE 'd:\data\tomhs4.dat' ;
INPUT ptid $ educ sbp12;
* 这样的话,缺失值被变换为2;
if educ < 7 then grad1 = 2 ; else
if educ >=7 then grad1 = 1 ;
* 下面的两种方法结果一样且是正确的;
if educ < 7 and educ ne . then grad2 = 2; else
if educ >=7 then grad2 = 1;
* IN 是SAS的一个特殊函数;
if educ IN(1,2,3,4,5,6) then grad3 = 2; else
if educ IN(7,8,9) then grad3 = 1;
*象下面的新变量定义,如果发生错误就惨了 ;
if sbp12 = . then sbp12c = . ; else
if sbp12 < 120 then sbp12c = 1 ; else
if sbp12 < 140 then sbp12c = 2 ; else
if sbp12 >=140 then sbp12c = 3 ;
run;
PROC FORMAT;
VALUE grad 1-6 = '< College Graduate'
7-9 = 'College Graduate';
VALUE sbpcat LOW - 119 = '< 120'
120-139 = '120-139'
140-HIGH = '140+' ;
run;
*Proc Freq 是常用的检查新变量是否定义得对的方法 ;
PROC FREQ DATA=tdata;
TABLES grad1 grad2 grad3 educ ;
FORMAT educ grad.;
RUN;
PROC FREQ DATA=tdata;
TABLES sbp12c sbp12;
FORMAT sbp12 sbpcat.;
RUN;
quit;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -