全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2353 7
2013-05-30
我现在有个数据集cq.edate1,里面的日期变量trdmnt 为2006-01-19的形式,  如何生成新数据集cq.edate2,把trdmnt变量中的2006-01-19形式变成2006-01这样的形式啊  就是把年月日变成年月  拜求
二维码

扫码加我 拉你入群

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

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

全部回复
2013-5-30 08:20:19
data test;
   format date yymmdd10. date1 yymmd7.;
   input date yymmdd10.;
   date1 = date;
datalines;
2006-01-19
2006-01-20
2006-02-01
;
run;
二维码

扫码加我 拉你入群

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

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

2013-5-30 08:53:30
yongyitian 发表于 2013-5-30 08:20
data test;
   format date yymmdd10. date1 yymmd7.;
   input date yymmdd10.;
这个不起作用呀 还有别的方法没  谢谢啦
二维码

扫码加我 拉你入群

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

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

2013-5-30 09:06:41
管理考研 发表于 2013-5-30 08:53
这个不起作用呀 还有别的方法没  谢谢啦
data test;
    format date yymmdd10. date1 yymmd7.;
    format date2 $7.;
   input date yymmdd10.;
   date1 = date;
   date2 = substr(put(date,yymmdd10.),1,7);
datalines;
2006-01-19
2006-01-20
2006-02-01
;
proc print data=test; title 'Test date format: yyyy-mm '; run;

Dateformat.JPG
二维码

扫码加我 拉你入群

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

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

2013-5-30 10:56:45
trdmnt是不是字符型的啊?这个试试。
data a;
set cq.edate1;
keep trdmnt yymm;
yymm=substr(trdmnt,1,7);
run;
二维码

扫码加我 拉你入群

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

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

2013-6-2 20:16:24
data test;
   input date $10.;
datalines;
2006-01-19
2006-01-20
2006-02-01
;
run;
data a;
set test;
new2=prxchange('s/(\d{4}-\d{2})-(\d{2})/$1/',-1,date);
run;
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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