Sas 更改PROC MEANS中的统计标签(如PROC表格中的KEYLABEL)

Sas 更改PROC MEANS中的统计标签(如PROC表格中的KEYLABEL),sas,Sas,我知道我可以使用PROC TABLATE中的KEYLABEL命令为统计名称指定自定义标签,即: KEYLABEL N=''ALL=“Total”PCTN=“Percent”SUM=“Total” 它不适用于PROC MEANS。是否有等效的命令?我可以使用变通方法来执行此操作吗?我正在运行SAS程序,并根据该程序自动生成Latex markeup,因此如果可能,我需要更改PROC MEANS命令中报告的N、SUM、MEAN、MEDIAN、MIN、MAX列的名称 谢谢。不幸的是,我不认为您可以将P

我知道我可以使用PROC TABLATE中的KEYLABEL命令为统计名称指定自定义标签,即:

KEYLABEL N=''ALL=“Total”PCTN=“Percent”SUM=“Total”

它不适用于PROC MEANS。是否有等效的命令?我可以使用变通方法来执行此操作吗?我正在运行SAS程序,并根据该程序自动生成Latex markeup,因此如果可能,我需要更改PROC MEANS命令中报告的N、SUM、MEAN、MEDIAN、MIN、MAX列的名称


谢谢。

不幸的是,我不认为您可以将PROC MEANS中的自动变量标签更改为自定义的。您可以标记变量:

proc means data=sashelp.class;
var age;
label age="Child's Age";
class name;
output out=classmean sum=;
run;
可以使用“自动标签”自动附加(默认)标签:

但我不认为你能控制得更进一步。我能想到的最简单的解决方案是编写一个宏,使用PROC数据集来完成这项工作[获取已知的变量名称,并根据这些名称为它们指定标签]。我不知道你需要做什么,但做起来并不难。类似这样的情况(特别是proc-sql将根据您的程序而显著变化)


如果您在这里没有得到好的答案,我强烈建议您在SAS Listserv(SAS)上询问-l@listserv.uga.edu). 其中一位用户在*tex输出方面非常熟练,很可能在过去遇到过这种情况。我会看看他写的SUGI论文,看看有没有有用的。
proc means data=sashelp.class;
var age;
label age="Child's Age";
class name;
output out=classmean sum= n= /autoname autolabel;
run;
%macro relabel(var=);
label &var._n = "&var. Count";
*... more of these ...;
%mend relabel;

proc sql;
select cats('%relabel(var=',name,')') into :rellist separated by ' ' 
  from dictionary.columns
  where memname='MYDATASET' and libname='WORK' and *criteria to determine in proc means*;
quit;
proc datasets;
&rellist.
quit;