全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2841 5
2011-10-06
data a;
input country $ v1-v4;
cards;
B 0 1 1 0
C 0 0 1 0
D 1 1 0 0
C 1 0 0 1
B 0 1 1 1
D 1 0 0 0
B 1 0 1 0
C 1 0 1 0
D 1 0 0 1
;

proc tabulate data=a noseps;
   class  Country v1 - v4;
   tables Country all,  
        (v1  v2 v3 v4 )*rowpctn  ;
   keylabel    all='Total'
             rowpctn='percent of row ' ;
   run;
我用这个程序运行,没有异常。问题是在实际数据(有上千个观察值)中,我跑同样的程序,变量country 分明有三个值,结果却只给出其中的一个。有人能分析一下为什么会出现这样的问题?谢谢
二维码

扫码加我 拉你入群

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

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

全部回复
2011-10-6 12:20:50
是这个吗?
附件列表
tabulate示例.png

原图尺寸 18.58 KB

截图

截图

二维码

扫码加我 拉你入群

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

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

2011-10-6 21:09:54
谢谢版主。这个程序对这组数据是正确的。但运行实际数据时,LOG里没给出错误信息,Country 却只给了一个值,比如说其中的D,很奇怪。proc tabulate 对变量类型有要求吗 ?
二维码

扫码加我 拉你入群

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

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

2011-10-10 03:11:36
请帮我分析一下, 为什么这个程序用于实际数据时,output 里country 只给出一个国家?为什么? 为什么?
二维码

扫码加我 拉你入群

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

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

2011-10-10 09:09:48
你先拿你的数据的10分之一的观测,做一下看看是什么结果。然后再增加一些。
或者是把country这个变量提出来,排一下序,看看是不是有什么问题。
二维码

扫码加我 拉你入群

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

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

2011-10-10 10:42:13
谢谢回复。我试了一下排序变量country , 结果是一样的,仍然是一个值‘D' .
另外,我又试了如果我想要country ='C' 的结果,我加了where语句,

proc tabulate data=a (where=( country='C'));

LOG里给出“WARNING: A class, frequency, or weight variable is missing on every observation. ” 什么意思啊?

   
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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