我想使用 PROC TABULATE 复制 PROC MEANS 的输出。这样做的原因是我希望将利润百分比(或利润)作为 PROC MEANS 输出中的变量之一,但希望抑制一个或多个统计数据的计算,即会有一个'- ' 或“N”和“SUM”下的“边距”行中的类似内容。
这是示例数据:
data have;
input username $ betdate : datetime. stake winnings;
dateOnly = datepart(betdate) ;
format betdate DATETIME.;
format dateOnly ddmmyy8.;
datalines;
player1 12NOV2008:12:04:01 90 -90
player1 04NOV2008:09:03:44 100 40
player2 07NOV2008:14:03:33 120 -120
player1 05NOV2008:09:00:00 50 15
player1 05NOV2008:09:05:00 30 5
player1 05NOV2008:09:00:05 20 10
player2 09NOV2008:10:05:10 10 -10
player2 15NOV2008:15:05:33 35 -35
player1 15NOV2008:15:05:33 35 15
player1 15NOV2008:15:05:33 35 15
run;
data want;
set have;
retain margin;
margin = (winnings) / stake;
PROC PRINT; RUN;
我一直在用 PROC MEANS 计算统计数据(如下所示),但是“margin”变量的 SUM 统计数据的值没有任何意义:我想抑制这个值。因此,我一直在尝试使用 PROC TABULATE 复制此表以更好地控制输出,但到目前为止还没有成功。
proc means data=want N sum mean median stddev min max maxdec=2 order=freq STACKODS;
var stake winnings margin;
run;
proc tabulate data=want;
var stake winnings margin;
table stake * (N Sum mean Median StdDev Min Max);
run;
我将不胜感激这方面的任何帮助。