如何将这些变量添加到SAS代码中?
我试图在代码中添加三个变量,但得到了错误如何将这些变量添加到SAS代码中?,sas,Sas,我试图在代码中添加三个变量,但得到了错误 263 var Subj bmi_init bmi_final bmi_diff; ERROR: Variable BMI_INIT not found. ERROR: Variable BMI_FINAL not found. ERROR: Variable BMI_DIFF not found. 这是我的密码: DATA dietdata; infile 'Downloads/dietdata.dat';
263 var Subj bmi_init bmi_final bmi_diff;
ERROR: Variable BMI_INIT not found.
ERROR: Variable BMI_FINAL not found.
ERROR: Variable BMI_DIFF not found.
这是我的密码:
DATA dietdata;
infile 'Downloads/dietdata.dat';
input Subj $ 1-3 Height $ 4-5 Wt_init 6-8 Wt_final 9-11;
input(Height,w.d)
bmi_init = (Wt_init/2.2) / (Height/0.0254);
bmi_final = (Wt_final/2.2)/(Height/0.0254);
bmi_diff = bmi_init - bmi_final
RUN;
PROC PRINT data = dietdata;
var Subj bmi_init bmi_final bmi_diff;
RUN;
还有我的填充内容
00768155150
00272250240
00563240200
00170345298
00365140128
00467225205
试试这个
DATA dietdata;
infile 'Downloads/dietdata.dat';
input Subj $ 1-3 Height $ 4-5 Wt_init 6-8 Wt_final 9-11;
NumHeight = input(Height, 8.);
bmi_init = (Wt_init/2.2) / (NumHeight/0.0254);
bmi_final = (Wt_final/2.2)/(NumHeight/0.0254);
bmi_diff = bmi_init - bmi_final;
RUN;
如果你想把身高当作一个数字,为什么你要把它当作一个字符来读呢?你的体重指数公式是错误的。你从英寸到米的转换是错误的。你忘了把高度平方米。您的代码缺少一些分号 下面是使用示例数据的代码。要将其转换为从文件中读取,请通过删除*和CARDS语句以及行内数据行来取消对INFLE和RUN语句的注释
data dietdata;
* infile 'Downloads/dietdata.dat';
input Subj $ 1-3 Height 4-5 Wt_init 6-8 Wt_final 9-11;
bmi_init = (Wt_init/2.2) / (Height*0.0254)**2;
bmi_final = (Wt_final/2.2)/(Height*0.0254)**2;
bmi_diff = bmi_init - bmi_final ;
*run;
cards;
00768155150
00272250240
00563240200
00170345298
00365140128
00467225205
;
结果:
bmi_
Obs Subj Height Wt_init Wt_final bmi_init final bmi_diff
1 007 68 155 150 23.6169 22.8551 0.76184
2 002 72 250 240 33.9770 32.6179 1.35908
3 005 63 240 200 42.6030 35.5025 7.10050
4 001 70 345 298 49.6059 42.8480 6.75790
5 003 65 140 128 23.3459 21.3449 2.00108
6 004 67 225 205 35.3137 32.1747 3.13899