繁体   English   中英

SAS 变量在输入数据时读取了太多级别

[英]SAS Variable is reading too many levels when inputting data

以下是我的代码:

/* Enter Data */
data leaf;
    input Delay Angle @@;
    cards;
    30 140  30 138  30 140  30 138  30 142
    45 140  45 150  45 120  45 128  45 130
    60 118  60 130  60 128  60 118  60 118
;
run;

/* Comparing All Delays */
proc glm data=leaf plots=diagnostics;
    class Delay;
    model Angle = Delay;
    means Delay / HOVtest=Levene;
    title "Comparison of All Delays";
run;

当我运行代码时,我收到以下信息:

在此处输入图像描述

我的问题是延迟变量应该只有 3 个级别,值为 30 45 60,但正如您所看到的,它读取的级别比它应该的要多。 对我来说,数据看起来非常好,但我不知道为什么读取不正确。 非常感谢任何帮助!

当复制并粘贴到 SAS 显示管理器编辑器 window 时,您的数据步骤只会产生三个不同的延迟值。

也许有一些非空格字符隐藏在导致 INPUT 语句不同步的“空白”空间中。

但是为什么要缩进 CARDS 语句和行内数据行呢? 尝试像这样格式化您的代码以降低这样做的风险。

data leaf;
  input Delay Angle @@;
cards;
30 140  30 138  30 140  30 138  30 142
45 140  45 150  45 120  45 128  45 130
60 118  60 130  60 128  60 118  60 118
;

还要确保使用句点来指示任何缺失值。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM