我试图从分类变量中获取频率表。 我没有输出。错误说我的数据丢失了。 这是我的代码:
data one;
input overweight $ hours;
if hours <= 2 then hours= 'low';
if hours > 2 then hours= 'high';
if hours= 'high' then d=1;
else d=0;
datalines;
yes 8.0
no 0.5
yes 2.0
yes 6.5
.
.
.
;
proc freq data=one order=data;
by hours;
table overweight*hours/cmh;
run;
由于
答案 0 :(得分:2)
您没有看到数据,因为您正在尝试将字符串分配给数字变量。
if hours <= 2 then hours= 'low';
if hours > 2 then hours= 'high';
这样做会为小时分配一个缺失值,因为小时是一个缺失值,你没有看到任何输出。
如果您要更改代码以使用数字值数小时而不是像以下文本:
if hours <= 2 then hours = 0;
if hours > 2 then hours = 1;
在此之后,您需要按小时对数据集进行排序,然后您应该看到输出。