0

我的老板希望我在 SAS 中创建一个图表和表格,类似于您可以在 excel 中生成的东西,其中数据表位于图表下方。这意味着使用 x 轴上的数据并在其下方放置更多数据。

期望的输出

    (chart area) (Row 1) Building 1    Building 2   Building 3   Building 4 
                 (Row 2)   333             267          234         235 
                 (Row 3)   3232            213         3215         657

我不确定如何在 proc 报告中执行此操作,其中数据运行时间很长,而不是很宽。此外,数据集很长:

Building ID    var1     var2
Building 1      333     3232
Building 2      267     213
4

1 回答 1

0

IMO,CarolinaJay 建议使用 PROC GCHART 或 SGPLOT 或其他未遵循的其他 proc 是要走的路;虽然你可以同时做这两件事,但要做到这一点还有很多工作要做。

为了完成您的特定表格,我推荐 PROC TABULATE; 它并不关心您的数据走向何方。

data have;
informat buildingID $12.;
input BuildingID $    var1     var2;
datalines;
Building1      333     3232
Building2      267     213
;;;;
run;
proc tabulate data=have;
class buildingID;
var var1 var2;
tables (var1 var2)*sum=' ', buildingID=' ';
run;

把它放在一个情节下,你就会有这样的东西(我不知道如何绘制这个,所以我只是完全随机选择了一些东西):

ods _all_ close;
ods html;
data have;
informat buildingID $12.;
input BuildingID $    var1     var2;
datalines;
Building1      333     323
Building2      267     213
;;;;
run;
proc sgplot data=have;
vbar var1/response=var2 group=buildingID;
run;
title;
proc tabulate data=have;
class buildingID;
var var1 var2;
tables (var1 var2)*sum=' ', buildingID=' ';
run;
ods html close;
于 2013-02-25T04:36:22.057 回答