簡體   English   中英

如何使用ODS Excel在SAS中垂直堆疊表?

[英]How do I vertically stack tables in SAS using ODS Excel?

我正在使用Excel ODS標簽集將一系列的交叉表從SAS 9.3導出到Excel。

我寫的語法如下:

%include 'C:\Users\MyName\Documents\excltags.tpl';
ods tagsets.excelxp file = "M:\Assess\1718\PARTIC_3-8.xml"

proc sort data = assess_elem;
   by accommodations_ny participation_ny district;
run;

proc freq data = assess_elem
   by accommodations_ny participation_ny district;
   tables grade*proficiency / crosslist nocum nocol;
run;

ods tagsets.excelxp close;

變量是:

  • accommodations_ny:字母數字,不適用
  • Partition_ny:字母數字,不適用
  • 地區:字母數字,103個地區名稱
  • 等級:數字,3-8
  • 熟練程度:數字,0/1

上面的語法為103個區中的每個區創建了一個這樣的表:

有103個單獨的表

我想擁有的更像是:

要一張桌子

使用標簽集選項OPTIONS(SHEET_INTERVAL="Proc")

ods tagsets.excelxp 
  file=...
  style=...
  options(doc="all" sheet_interval="Proc")   /* <--- your magic --- */
;

DOC="ALL"選項將在日志中顯示ExcelXP標簽集文檔。

在TABLE語句中,您不僅限於兩種方式,特別是如果您使用LIST選項而不是CROSSLIST。

這是使用SASHELP.CARS的簡單示例

proc freq data=sashelp.cars;
table origin*make*cylinders / list;
run;

它創建一個像這樣的表:

在此處輸入圖片說明

這不會給您最左邊的未重復列,如果您願意,PROC TABULATE可以讓您更好地控制輸出或將其推送到表並使用PROC REPORT。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM