原始数据文件如下:
RANCH,1250,2,1,Sheppard Avenue, "$64,000"
SPLIT,1190,1,1,Rand Street, "$65,850"
CONDON, 1400,2,1,Market Street, "80,050"
TWOSTORY, 1810,4,3,Garris Street, "$107,250"
RANCH, 1500,3,3,Kemble Avenue, "$86,650"
SPLIT, 1615, 4,3, West Drive, "94,450"
SPLIT, 1305, 3,1.5,Graham Avenue, "$73,650"
以下是代码:
data work.condo_ranch;
infield "file_specificaton" did;
input style $ @;
if style = 'CONDO' or style = 'RANCH' then
input sqfeet bedrooms baths street $ price: dollar10.;
run;
因此,我认为输出数据集包含3个观测值,而正确的答案是输出包含7个观测值。有人告诉我为什么吗?非常感谢您的时间和关注。
答案 0 :(得分:0)
为什么您希望输出数据集只有3个观察值。 DATA步骤底部有一个隐含的OUTPUT语句。如果你只想输出那些STYLE IN(" CONDO"," RANCH")你可以添加条件输出的记录,例如:
if style = 'CONDO' or style = 'RANCH' then do;
input sqfeet bedrooms baths street $ price: dollar10.;
output;
end;
答案 1 :(得分:0)
如果您只想输出样式为CONDO或RANCH的记录,则可以将THEN
更改为分号。这会使您的IF
语句成为subsetting IF
。因此,数据步骤将在该点返回,并且永远不会在步骤结束时运行第二个INPUT或隐含的OUTPUT。