全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
2689 9
2013-07-31
请高手赐教!如何将1997-6-1 变成1997-06-01?
二维码

扫码加我 拉你入群

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

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

全部回复
2013-8-1 04:28:51
try this:

data a;
input date_old yymmdd10.;
datalines;
1997-6-1
1999-3-9
1999-1-1
;
run;
data b;
set a;
date_new=put(date_old, yymmdd10.);
run;
二维码

扫码加我 拉你入群

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

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

2013-8-1 08:58:00
如果需要数值型的,直接加format就可以。
data a;
input date_old yymmdd10.;
format date_old yymmdd10.;
cards;
1997-6-1
1999-3-9
1999-1-1
;
二维码

扫码加我 拉你入群

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

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

2013-8-1 23:23:56
goldbaodi 发表于 2013-8-1 04:28
try this:

data a;
可能因为我用的是字符型,所以这个方法不奏效,想了个本办法:

   day1=scan(vsdat,2,'/');
  if day1^='UNK' then day=put(day1+0, z2.);else day=day1;
  month1=scan(vsdat,1,'/');
  if month1^='UNK' then month=put(month1+0, z2.);else month=month1;
  year=scan(vsdat,3,'/');
再用compress链接起来,呵呵
谢谢!
二维码

扫码加我 拉你入群

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

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

2013-8-1 23:25:21
wwang111 发表于 2013-8-1 08:58
如果需要数值型的,直接加format就可以。
data a;
input date_old yymmdd10.;
方法我也尝试了,也不能实现,很奇怪!

还是谢谢您的赐教!
二维码

扫码加我 拉你入群

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

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

2013-8-2 02:41:25
复制代码
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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