SAS中文论坛

 找回密码
 立即注册

扫一扫,访问微社区

查看: 4422|回复: 8
打印 上一主题 下一主题

请教:用多个变量画boxplot图

[复制链接]

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
楼主
 楼主| 发表于 2012-8-29 04:04:42 | 只看该作者

请教:用多个变量画boxplot图

求教各位高人,

想在一张图里比较3个不同变量的均值和标准差。
查了一下proc boxplot的句法,主要用plot语句plot var*group; 即一个变量可以分组比较画在同一张图里。问题是我不想要分组,用不到group变量。
不知道各位坛友有么有能够实现的方法呢,感谢!

p.s.这个要求excel是可以做出来的,而且晓得一般画图不太用sas,但这次图量大,想写macros做。

再次感谢!
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
沙发
 楼主| 发表于 2012-8-29 09:51:55 | 只看该作者

Re: 请教:用多个变量画boxplot图

SAS是什么版本的? 9.2以上可以用sgplot 或者写proc template做,神马图样都可以放在一个图里~ 9.1的话…… 要查一下资料了,有一个外国人自己建的主页对9.1的画图相当有研究~
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
板凳
 楼主| 发表于 2012-8-29 11:47:27 | 只看该作者

Re: 请教:用多个变量画boxplot图

比较均值和标准差为什么要boxplot呢?如果要boxplot对三个变量,转换一下数据也不失为一种好方法(frow wide to long data).也就是说,把三个变量变成一个变量的三个categories。
proc sgplot; hbox y /category =x;run;
京剧
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
地板
 楼主| 发表于 2012-8-29 23:29:58 | 只看该作者

Re: 请教:用多个变量画boxplot图

感谢zhangzachary个jingju11君的回复,是sas9.2版本

不知是否有类似
proc gplot data=file;
        plot var1*group1 var2*group2 var3*group3 /overlay;
run;
相似的语句呢,但是要表现出均值和标准差。

p.s.样本量大,大概会有1000+observation转换数据不太方便勒……

[quote="zhangzachary":9ryhmpd7]SAS是什么版本的? 9.2以上可以用sgplot 或者写proc template做,神马图样都可以放在一个图里~ 9.1的话…… 要查一下资料了,有一个外国人自己建的主页对9.1的画图相当有研究~[/quote:9ryhmpd7]
[quote="jingju11":9ryhmpd7]比较均值和标准差为什么要boxplot呢?如果要boxplot对三个变量,转换一下数据也不失为一种好方法(frow wide to long data).也就是说,把三个变量变成一个变量的三个categories。proc sgplot; hbox y /category =x;run;京剧[/quote:9ryhmpd7]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
5#
 楼主| 发表于 2012-8-30 10:01:20 | 只看该作者

Re: 请教:用多个变量画boxplot图

1000+的真心不大……

学习下sgplot吧,会对你有帮助的。
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
6#
 楼主| 发表于 2012-8-30 10:03:28 | 只看该作者

Re: 请教:用多个变量画boxplot图

好的,感谢!说到底还是对SAS不熟悉的关系,有劳指点了。

[quote="zhangzachary":3aw9zz8w]1000+的真心不大……

学习下sgplot吧,会对你有帮助的。[/quote:3aw9zz8w]
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
7#
 楼主| 发表于 2012-8-30 11:38:34 | 只看该作者

Re: 请教:用多个变量画boxplot图

1000万行的数据的确比较大。但是无论如何,TRANSPOSE 过程要比画图过程快的多。如果数据量特别大,利用图示来表达数据通常意义不大。京剧
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
8#
 楼主| 发表于 2012-8-31 06:18:23 | 只看该作者

Re: 请教:用多个变量画boxplot图

仅供参考。京剧
<!-- m --><a class="postlink" href="http://blog.sina.com.cn/s/blog_a3a92636010162w6.html">http://blog.sina.com.cn/s/blog_a3a92636010162w6.html</a><!-- m -->
回复 支持 反对

使用道具 举报

49

主题

76

帖子

1462

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
1462
9#
 楼主| 发表于 2012-9-2 01:49:10 | 只看该作者

Re: 请教:用多个变量画boxplot图

感谢京剧提供学习信息。也感谢zhangzachary君的帮助。
昨天刚考了高级程序员,今天参考了Robert Allison发现原帖的解答,加第二行就解决:

proc gplot data=file;
        symbol interpol=box;
        plot var1*group1 var2*group2 var3*group3 /overlay;
run;

再次感谢二位。

[quote=&quot;jingju11&quot;:3p5dv27v]仅供参考。京剧
<!-- m --><a class="postlink" href="http://blog.sina.com.cn/s/blog_a3a92636010162w6.html">http://blog.sina.com.cn/s/blog_a3a92636010162w6.html</a><!-- m -->[/quote:3p5dv27v]
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|Archiver|SAS中文论坛  

GMT+8, 2025-5-3 08:56 , Processed in 0.069732 second(s), 19 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表