在 SAS DS2 中,如何创建一个简单的程序来计算 bmi
In SAS DS2, how to create a simple program to calculate bmi
我正在尝试通过编写计算 BMI 的程序来学习一些基本的 DS2 编程。我写了一个程序,但我得到 'ERROR: Line 47: Attempt to obtain a value from a void expression.'。我做错了什么?
这是我的程序:
proc ds2;
data _null_;
dcl double bmi;
method bmi_calc(double height, double weight);
dcl double bmi;
bmi = weight/(height * height);
end;
method init();
weight = 70.5;
height = 1.68;
end;
method run();
bmi = bmi_calc(height, weight);
put 'BMI IS: ' bmi;
end;
method term();
put bmi;
end;
enddata;
run;
quit;
您需要在 ds2 中使用自定义方法做两件事:
- 声明您要使用的值的类型return
- Return 值
例如,此方法 returns 值 10
。
method foo() returns double;
return 10;
end;
要使您的方法有效,您只需说明您return使用的变量类型,然后return那个值。
method bmi_calc(double height, double weight) returns double;
dcl double bmi;
bmi = weight/(height * height);
return bmi;
end;
我正在尝试通过编写计算 BMI 的程序来学习一些基本的 DS2 编程。我写了一个程序,但我得到 'ERROR: Line 47: Attempt to obtain a value from a void expression.'。我做错了什么?
这是我的程序:
proc ds2;
data _null_;
dcl double bmi;
method bmi_calc(double height, double weight);
dcl double bmi;
bmi = weight/(height * height);
end;
method init();
weight = 70.5;
height = 1.68;
end;
method run();
bmi = bmi_calc(height, weight);
put 'BMI IS: ' bmi;
end;
method term();
put bmi;
end;
enddata;
run;
quit;
您需要在 ds2 中使用自定义方法做两件事:
- 声明您要使用的值的类型return
- Return 值
例如,此方法 returns 值 10
。
method foo() returns double;
return 10;
end;
要使您的方法有效,您只需说明您return使用的变量类型,然后return那个值。
method bmi_calc(double height, double weight) returns double;
dcl double bmi;
bmi = weight/(height * height);
return bmi;
end;