全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学
18347 1
2013-11-28
用SAS做研究的过程中,常常需要保留一定的小数点个数,有的时候保留2位到3位就可以了,有的时候需要精确的数据,则需要保留十几位。下面提供一种最简单的方法。
       我们希望将SAS求出的方差协方差矩阵,保留2位小数。数据集位SASUSER.SHIYAN。共有24个变量x。
       Proc corr data=sasuser.shiyan cov outs=jieguo;
      var x1-x24;
       run;
       proc print data=jieguo;
      format x1-x24   12.2 ; /*12表示列宽,2表示保留的小数点个数,注意,小数点个数不能比列宽还大*/
      run;
      如果想保留10位,把12.2 改为12.10就可以了。其他的reg过程或model过程,方法相同:先指定变量,再在后面定义格式,如:estimate 9.3 tvalue 13.10等。
补充1:可能我们用这个方差协方差结果的目的是直接粘贴到LISREL结构方程软件中,来编程的。这里补充一下如何将上述结果输出到外部文件中。比如我们想把这个结果输入到我们G盘的txt文件,采用传输系统ODS方法如下:
ods listing file='g:/jieguo.txt';
proc print data=jieguo;
run;
补充2:有时,我们常常想得到回归参数的方差协方差矩阵,例如,大样本条件下WALD约束检验统计量就需要这个矩阵;这个过程直接从REG选项调用即可:
      proc reg data=sasuser.aa covout outest=jieguo;
      model y=x/covb;
      run;
     保留小数点的方法同上。      补充3:做研究的过程中,往往遇见几十个变量,我们希望方差协方差矩阵能展现在一张页面中,而不是分开的页面,我们只需要制定输出格式即可,方法是在PROC步前添加命令:options linesize=256;/*最大长度是256*/。

参考资料:《SAS编程技术教程》,朱世武。




二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2016-12-27 00:20:47
非常感谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群