【问题标题】:How many observations in the output dataset?输出数据集中有多少观察?
【发布时间】:2015-11-21 20:10:10
【问题描述】:

下面列出了一个原始数据文件:

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 个观察值。有人告诉我为什么吗?非常感谢您的时间和关注。

【问题讨论】:

    标签: sas


    【解决方案1】:

    为什么您会期望输出数据集只有 3 个观察值。在 DATA 步的底部有一个隐含的 OUTPUT 语句。如果您只想输出 STYLE IN ("CONDO","RANCH") 的那些记录,您可以添加条件输出,例如:

    if style = 'CONDO' or style = 'RANCH' then do;
      input sqfeet bedrooms baths street $ price: dollar10.;
      output;
    end;
    

    【讨论】:

      【解决方案2】:

      如果您只想输出样式为 CONDO 或 RANCH 的记录,您可以将 THEN 更改为分号。这将使您的IF 声明成为subsetting IF。因此,数据步骤将在该点返回,并且永远不会在步骤结束时运行第二个 INPUT 或隐含的 OUTPUT。

      【讨论】:

        猜你喜欢
        • 2012-07-26
        • 1970-01-01
        • 1970-01-01
        • 2019-12-31
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-07-12
        • 1970-01-01
        相关资源
        最近更新 更多