这是我正在做的事情,但却引发了一个错误说法。它将打印前两个但在此之后失败。
错误:数据集WORK.FISH未按升序排序。当前的BY组具有Species = Whitefish和下一个BY组 有物种= Parkki。
知道我做错了什么吗?
data fish;
set sashelp.fish;
run;
proc means data = fish;
var weight;
by species;
run;
答案 0 :(得分:2)
BY
中的proc means
语句假定数据集按BY
变量排序。只需在proc sort
之前添加proc means
。
data fish;
set sashelp.fish;
run;
proc sort data=fish;
by species;
run;
proc means data = fish;
var weight;
by species;
run;
在没有proc sort
的情况下执行此操作的另一种方法是使用class
语句:
proc means data=sashelp.fish mean;
class species;
var weight;
run;