SAS 丢弃条件输出 - 在输出中观察到的变量不足

SAS Drop Condition Output - Not enough variables observed in Output

我正在学习 drop_conditions SAS。我请求一个关于三个变量的样本,但是只检索到两个观察值。请指教!谢谢!

data temp;
set mydata.ames_housing_data;
format drop condition .;
if (LotArea in (7000:9000)) then drop_condition = '01: Between 7000-9000 sqft';
else if (LotShape EQ 'IR3') then drop_condition = '02: Irregular Shape of Property';
else if (condition1 in 'Artery' OR 'Feedr') then drop_condition = '03: Proximity to arterial/feeder ST';

run;

proc freq data=temp;
tables drop_condition;
title 'Sample Waterfall';
run; quit;

您的 conditions/comparisons 没有正确指定,我认为您正在寻找 IN 运算符在一行中进行多重比较。我很惊讶你的日志中没有错误。

而不是以下内容:

if (LotArea = 7000:9000)

尝试:

if (lotArea in (7000:9000))

if (condition1 EQ 'Atrery' OR 'Feedr')

应该是

if (condition1 in ('Atrery', 'Feedr'))

编辑: 您还需要为 drop_condition 变量指定长度,而不是指定格式,以确保变量足够长以容纳指定的文本。之后根据指定条件使用 proc freq 验证您的答案也很有用,例如:

proc freq data=temp;
where drop_condition=:'01';
tables drop_condition*lot_area;
run;