楼主: CharlieSunSH04
908 5

[问答] sas新手,诚心请教大家一道题,谢谢各位高手! [推广有奖]

  • 0关注
  • 0粉丝

学前班

50%

还不是VIP/贵宾

-

威望
0
论坛币
6 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
43 点
帖子
2
精华
0
在线时间
0 小时
注册时间
2014-11-30
最后登录
2016-6-5

相似文件 换一批

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
刚学习SAS,很多不明白的地方,请各位高手指导。如果目前我有个数据集大概是这个样子的,那么我怎么可以分别求出每个科目,每个成绩等级的人数呢?谢谢各位的指导了!
QQ截图20150403213554.png
二维码

扫码加我 拉你入群

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

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

关键词:诚心请教 不明白 数据集

沙发
dealbada 发表于 2015-4-4 03:24:22 |只看作者 |坛友微信交流群
数学科目的count如下,其他依次类推:
data exam;                                                                                                                              
input num math $ eng $ chin $ b;                                                                                                        
cards;                                                                                                                                 
101301 pass pass pass 3                                                                                                                 
101302 fail fail fail 3                                                                                                                 
101303 pass fail great 3                                                                                                               
101304 great pass pass 3                                                                                                               
101305 great fail pass 3                                                                                                               
101306 great fail pass 3                                                                                                               
;                                                                                                                                       
run;                                                                                                                                    
proc print data=exam;run;                                                                                                               
proc sort data=exam out=new;                                                                                                            
by math;                                                                                                                                
run;                                                                                                                                    
proc print data=new;run;                                                                                                               
                                                                                                                                       
data count;                                                                                                                             
set new;                                                                                                                                
by math;                                                                                                                                
if first.math then count=0;                                                                                                            
count+1;                                                                                                                                
if last.math;                                                                                                                           
run;                                                                                                                                    
proc print data=count (keep=math count);                                                                                                
run;                     

使用道具

dealbada 发表于 2015-4-4 03:24
数学科目的count如下,其他依次类推:
data exam;                                                      ...
谢谢您~~~嗯,好像有点明白了,思路就是对数学成绩排序,然后再计数,对吧。
可是,为什么出来的结果还是不对呢。我跑出来计数的结果是这样的。
obs math count
1     .       6
麻烦您了,谢谢~~~

使用道具

板凳
坦途100分 学生认证  发表于 2015-4-4 21:44:04 |只看作者 |坛友微信交流群
data exam;                                                                                                                              
input num math$ eng$ chin $ b;                                                                                                        
cards;                                                                                                                                 
101301 pass pass pass 3                                                                                                                 
101302 fail fail fail 3                                                                                                                 
101303 pass fail great 3                                                                                                               
101304 great pass pass 3                                                                                                               
101305 great fail pass 3                                                                                                               
101306 great fail pass 3                                                                                                               
;                                                                                                                                       
run;                                                                                                                                    
proc print data=exam;run;   
proc freq data=exam;run;
不知道你是要求这个不,run一下code看看

使用道具

报纸
dealbada 发表于 2015-4-6 16:00:18 |只看作者 |坛友微信交流群
CharlieSunSH04 发表于 2015-4-4 09:39
谢谢您~~~嗯,好像有点明白了,思路就是对数学成绩排序,然后再计数,对吧。
可是,为什么出来的结果还是 ...
你输入数据有问题吧?
我得到如下结果:
-------------------------------------------------------
The SAS System          12:10 Sunday, April 3, 2011   7

                                     Obs    math     count

                                      1     fail       1
                                      2     great      3
                                      3     pass       2

使用道具

地板
dealbada 发表于 2015-4-6 16:06:12 |只看作者 |坛友微信交流群
对上面板凳的方法简单些。
proc freq data=exam;                                                                                                                    
table math eng chin;                                                                                                                    
run;   

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-23 19:16