全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2788 10
2013-06-20
我有一张SAS表,格式如下,现在希望转换成另一种表的格式。新表的统计字段,以旧字段(变量)结合不同月份(变量值)产生新变量。实际中,这张表旧变量*月份约产生新变量估计在3000个左右。谢谢 !

原始文件    
cust_idmonthKPI1KPI2 
a2012021213 
a2012031416 
b2012021822 
     
希望结果    
cus_idKPI1_201202KPI2_201202KPI1_201203KPI2_201203
a12131416
b1822..



二维码

扫码加我 拉你入群

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

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

全部回复
2013-6-20 09:43:56
在线求解答。困扰我很久了。
二维码

扫码加我 拉你入群

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

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

2013-6-20 09:55:10
你的这个问题,如果KPI只有两个的话,可以用两步proc transpose解决,然后再把两个结果表格组在一起,如下所示:

proc transpose data=have out=want1;
by cust_id;
id month;
var KPI1;
quit;

proc transpose data=have out=want2;
by cust_id;
id month;
var KPI2;
quit;

然后再把这两个want表合并,合并的时候需要修改下变量名。

如果你的KPI变量很多,我就没有什么好办法了,等其他牛人来解答吧


二维码

扫码加我 拉你入群

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

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

2013-6-20 10:07:35
谢谢playmore!这个方法对我有帮助。
实务上,"kpi"变量大概有60个左右,比较多。
二维码

扫码加我 拉你入群

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

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

2013-6-20 10:15:31
复制代码
二维码

扫码加我 拉你入群

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

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

2013-6-20 10:29:35
hopewell 发表于 2013-6-20 10:15
嗯,这个办法好
proc transpose只转置,不能重建新的变量

我过去也遇到过lz这个问题,后来改进了数据结构就避免了

如果不是非要整理成这个样子用来输出报表
那么原始的类似于panel data的结构就不错
60多个KPI,一二十个月份,估计就得有1000个变量了,最后这表就没法看也没法用了
二维码

扫码加我 拉你入群

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

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

点击查看更多内容…
相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

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