2

我想导出一个由PROC TABULATE. 我的代码是这样的:

ODS EXCEL FILE="myFile.xlsx" (options sheet_name="CRIME TYPE");

  PROC TABULATE DATA=myData;
    TITLE 'myTitle';
    BY crime_type;
    CLASS year;
    CLASS nation / ORDER=FREQ;
    TABLES year, nationality / CONDENSE;
  RUN;

ODS EXCEL CLOSE;

这会为我创建一个包含不同工作表的 excel 文件:

THEFT     
      country1  country2 country3 ...
--------------------------------------
1990           
1991
1992
--------------------------------------



ASSAULT  
      country1  country2 country3 ...
--------------------------------------
1990           
1991
1992
--------------------------------------

不幸的是,这些表没有不同罪行的名称(盗窃、袭击……),而是被称为“犯罪类型 1”、“犯罪类型 2”等等 ( SHEET_NAME="CRIME TYPE")。

有谁知道如何根据变量的值命名工作表crime_type

4

2 回答 2

5

如果要使用crime_type变量的值命名工作表,则可以options(sheet_name='#byval1')改用(options sheet_name="CRIME TYPE")

于 2019-10-23T08:30:51.247 回答
1

从 SAS 支持尝试此解决方案 https://communities.sas.com/t5/ODS-and-Base-Reporting/ODS-Excelxp-PROC-TABULATE-multiple-sheets/td-p/359181

于 2019-10-23T08:27:41.120 回答