楼主: foxxm
1279 7

请教一个交叉频数的一个问题 [推广有奖]

  • 0关注
  • 0粉丝

初中生

23%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
137 点
帖子
10
精华
0
在线时间
16 小时
注册时间
2012-6-2
最后登录
2019-8-3

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
刚学习SAS,请教一个问题。
我有一个数据集,类似:

故障代码   生产月份  报修月份
101      200801      200801
103      200802      200802
104      200803      200803
.               .                  .
.               .                   .
.                .                  .

我想做成下面这样的表格,31、42、55代表上面的故障代码总数。
                    报修月份
生产月份       200801       200802          200803
200801            31                42                     55
200802             .                     .                         .
200803              .                   .                         .

麻烦各位能帮忙解决阿,非常感谢阿!!!急
二维码

扫码加我 拉你入群

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

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

关键词:非常感谢 数据集

沙发
foxxm 发表于 2013-8-30 08:53:44 |只看作者 |坛友微信交流群
自己顶一下,在线等。
希望有个功能和EXCLE数据透视图功能一样,我这个数据量太大,excle解决不了了

使用道具

藤椅
yongyitian 发表于 2013-8-30 09:09:54 |只看作者 |坛友微信交流群
  1. data test;
  2.     array p{3} _temporary_  (200801, 200802, 200803);
  3.     array r{5} _temporary_  (200801, 200802, 200803, 200804, 200805);
  4.     array c{6} _temporary_  (101, 102, 103, 104, 105, 106);
  5.       do i = 1 to 200;  
  6.         c1 = int(ranuni(1234)* 3+1);  prod_date = p[c1];
  7.         c2 = int(ranuni(1234)* 5+1);   rep_date = r[c2];
  8.         c3 = int(ranuni(1234)* 6+1);       code = c[c3];
  9.         output;
  10.       end;
  11.     drop i c1 c2 c3;
  12. run;

  13. proc sql noprint;
  14.    create table test_1 as
  15.      select prod_date, rep_date, count(*) as num
  16.      from test
  17.      group by prod_date, rep_date;
  18. quit;

  19. proc transpose data=test_1 out=wanted(drop=_name_) prefix=m;
  20.     by prod_date;
  21.     id rep_date;
  22.     var num;
  23. run;
复制代码

使用道具

板凳
foxxm 发表于 2013-8-30 10:04:46 |只看作者 |坛友微信交流群
yongyitian 发表于 2013-8-30 09:09
请问有没有其他方法呢,因为我也不知道有哪些生产月份和保修月份,数据也是系统实时更新的。我就想用SAS实现excel数据透视图的功能,谢谢

使用道具

报纸
pobel 在职认证  发表于 2013-8-30 10:30:43 |只看作者 |坛友微信交流群
proc freq data=test;
  tables prod_date*rep_date;
  ods output CrossTabFreqs=freq(where=(^missing(prod_date) and ^missing(rep_date) ));
run;

proc transpose data=freq out=wanted(drop=_NAME_ _LABEL_);
   by prod_date;
   var frequency;
   id rep_date;
run;
和谐拯救危机

使用道具

地板
yongyitian 发表于 2013-8-30 10:49:46 |只看作者 |坛友微信交流群
foxxm 发表于 2013-8-30 10:04
请问有没有其他方法呢,因为我也不知道有哪些生产月份和保修月份,数据也是系统实时更新的。我就想用SAS实 ...
其他方法还有 PROC FREQ, PROC MEAN, PROC SUMMARY, data step, and PROC SQL. 但都不是做透视图.

感觉应该有一个日期是固定的, 比如生产月份。其它日期可以更新。

做透视图可能需要一个  tableeditor 可一在这里下载.
support.sas.com/rnd/base/ods/odsmarkup/tableeditor/index.html

使用道具

7
foxxm 发表于 2013-8-30 11:17:24 |只看作者 |坛友微信交流群
yongyitian 发表于 2013-8-30 10:49
其他方法还有 PROC FREQ, PROC MEAN, PROC SUMMARY, data step, and PROC SQL. 但都不是做透视图.

感觉 ...
是的,生产日期固定,维修日期变化,网址里有透视图的方法吗,我看没有阿,请指教

使用道具

8
yongyitian 发表于 2013-8-30 11:40:12 |只看作者 |坛友微信交流群
foxxm 发表于 2013-8-30 11:17
是的,生产日期固定,维修日期变化,网址里有透视图的方法吗,我看没有阿,请指教
网页最下面是 create Excel Pivot Tables. 不好意思, 没用过.

使用道具

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

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

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

GMT+8, 2024-4-28 02:51