我如何简单地在sas中命名行标题

时间:2016-03-10 15:58:18

标签: sas

我想要做的就是在这个简单的聚类算法的输出中命名每一行。例如,代替行1,2,3和4具有最佳,好,坏和最差。谢谢!

for

2 个答案:

答案 0 :(得分:2)

SAS没有“行标题”的概念。但是,如果您有一个值为1,2,3,4的变量(您将 - 群集值!),您可以使用一种格式来执行此操作。

proc format;
  value clusf
    1='Best'
    2='Good'
    3='Bad'
    4='Worst'
  ;
quit;

proc datasets lib=work;
  modify clus;
  format cluster CLUSF.;
quit;

这假设您可以可靠地将1,2,3,4链接到这四个值;我不确定FASTCLUS是否可靠。如果不是,您可能需要手动编码并/或使用代码来确定哪个群集是哪个。

答案 1 :(得分:1)

乔的方法看起来很合理......这是另一个方法。 Haven没有对它进行测试,没有数据可以测试,但是在这里:

运行proc fastclus后,修改输出数据集,添加一个变量,该变量将在未来的proc打印中用作ID:

data clus;
  format position $8.;
  set clus;
  if cluster=1 then position="Best";
  else if cluster=2 then position="Good";
  /* ... and so on ... */
run;

然后打印时:

proc print data=clus;
  id position;
run;