Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sas 为什么输出数据行向下移动了一个单元格?_Sas - Fatal编程技术网

Sas 为什么输出数据行向下移动了一个单元格?

Sas 为什么输出数据行向下移动了一个单元格?,sas,Sas,我正在使用一个最简单的程序,找出所有分数的平均值,去掉最低的两个 data new; low1=smallest(1,score_1-score_6); low2=smallest(2,score_1-score_6); tot=score_1+score_2+score_3+score_4+score_5+score_6; avg=(tot-low1-low2)/4; set mydata; run; “mydata”不包含任何缺失值,但在输出表中,数据向下移动一个单元格。 输出看起来像di

我正在使用一个最简单的程序,找出所有分数的平均值,去掉最低的两个

data new;
low1=smallest(1,score_1-score_6);
low2=smallest(2,score_1-score_6);
tot=score_1+score_2+score_3+score_4+score_5+score_6;
avg=(tot-low1-low2)/4;
set mydata;
run;
“mydata”不包含任何缺失值,但在输出表中,数据向下移动一个单元格。 输出看起来像dis

id低1分\u 1分\u 2分\u 3分\u 4分\u 5分\u 6低2总分平均值

1    .    0       0     10        80        0      75     .      .     .
2    0    0       0     0          75      80      0      0     165   41.25
3    0    0       50     10        60      55      0      0     155   38.25
4...and so on
sas生成如下注释: 注意:缺失值是对缺失值执行操作的结果

我不明白为什么计算值打印在第2行,而不是从第1行开始?
非常感谢您的帮助,谢谢

将SET语句放在DATA语句之后(我认为这通常是个好主意)。正如您所看到的,第一行试图创建一个变量,但没有任何数据;数据只在最后读取