全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 SAS专版
6178 10
2010-05-05
悬赏 10 个论坛币 已解决
我想把下列格式的时间转化为SAS能识别的时间格式,试了老半天也没成功,求助各位了,非常感谢!
数据在excel文件中(一共2列,time和BC各1列)
           time             BC
2010-4-30  0:00     0.178453913
2010-4-30  0:01     5.97E-02
2010-4-30  0:02    4.33E-02
2010-4-30  0:03    0.189170572
2010-4-30  0:04    0.18681088
2010-4-30  0:05    5.53E-02
2010-4-30  0:06    0.334657956
2010-4-30  0:07    0.065982183
2010-4-30  0:08    0.132350325

最佳答案

sushe1527 查看完整内容

点菜最怕随便,你有要求就好说了~~~ data a; input dt $20.; datalines; 2006-1-1 12:21 ; run; proc format; picture dt low-high='%d-%m-%Y %H:%M' (datatype=datetime); run; data b; length datec $10 dtc $20; set a; datepart=scan(dt,1,' '); timepart=scan(dt,2,' '); daten=input(datepart,yymmdd10.); datec=put(daten,date9.); dtc=catx(':',datec,timepart) ...
二维码

扫码加我 拉你入群

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

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

全部回复
2010-5-5 18:51:51
sllhappy0729 发表于 2010-5-5 21:05
也就是转化为SAS时间格式,比如01JAN2006:12:21。导入是容易,但是转化过来对我来说还是非常困难,恳请赐教!
点菜最怕随便,你有要求就好说了~~~


data a;
     input dt $20.;
  datalines;
2006-1-1 12:21
;
run;
proc format;
     picture dt low-high='%d-%m-%Y %H:%M' (datatype=datetime);
run;
data b;
     length datec $10 dtc $20;
     set a;
  datepart=scan(dt,1,' ');
  timepart=scan(dt,2,' ');
  daten=input(datepart,yymmdd10.);
  datec=put(daten,date9.);
  dtc=catx(':',datec,timepart);
     dtn=input(dtc,datetime19.);
  format dtn dt19.;
  keep dt dtn;
  proc print data=b;
run;
二维码

扫码加我 拉你入群

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

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

2010-5-5 19:06:40
你说你这个数据
DATE吧 你中间是4 不是04
说TIME吧
你只有小时 分钟 没得秒
我不知道你想变成撒子数据格式
二维码

扫码加我 拉你入群

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

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

2010-5-5 19:12:10
转化成任何一种SAS系统能够识别的时间格式,这样我就能作图或者继续下一步的工作。非常感谢你的关注,不知能否帮我解决这个问题?
2# crackman
二维码

扫码加我 拉你入群

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

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

2010-5-5 19:17:19
那你把秒全部默认为0吧这样去做就简单了
二维码

扫码加我 拉你入群

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

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

2010-5-5 19:22:55
可以把所有的秒都默认为0,能不能给我一些提示?非常感谢!
4# crackman
二维码

扫码加我 拉你入群

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

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

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

说点什么

分享

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