全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
3340 16
2016-12-15
从TXT导入的一个时间字段,直接是字符形式的,内容形式如:2016/12/5 12:05:50;需要改成字符格式,但是一般的如input改法无效,因为“2016/12/5 12:05:50”本身不是一个数字,请问有别的方法吗
二维码

扫码加我 拉你入群

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

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

全部回复
2016-12-15 12:54:52
data a;

input x $20. ;

cards;
2010-1-10
2016/12/5 12:05:50
;

run;

data b;
set a;
y=input(x,anydtdte19.);
t=input(scan(x,2,''),time8.);
if t ne . then do;
yt=put(y,date9.)||'T'||put(t,time8.);

jj=input(yt,datetime19.);
end;

format y yymmdd10. t time8. jj datetime19.;
run;
二维码

扫码加我 拉你入群

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

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

2016-12-15 13:21:23
对这种“dirty”非标准日期时间,应该用 ANYDTDTM. 读入,再用 datetime 19. format,就可以转换成标准的日期时间格式: 05DEC2016:12:05:50

二维码

扫码加我 拉你入群

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

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

2016-12-15 14:30:33
data a;
input dt $20.;
dt1=input(dt,anydtdte19.);
cards;
2016-12-5 12:05:50
;
run;

二维码

扫码加我 拉你入群

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

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

2016-12-15 14:37:40
zhanjie.wang 发表于 2016-12-15 14:30
data a;
input dt $20.;
dt1=input(dt,anydtdte19.);
这种不行 出来的是 “01JAN1960:05:46:33” ,还是要先弄成 标准字符型的 ’05DEC2016T12:05:50‘,再转化
二维码

扫码加我 拉你入群

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

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

2016-12-15 15:29:37
lovexialulu 发表于 2016-12-15 14:37
这种不行 出来的是 “01JAN1960:05:46:33” ,还是要先弄成 标准字符型的 ’05DEC2016T12:05:50‘,再转化 ...
dt1的结果就是数字,  20793
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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