sas数字转日期格式_一个关于sas日期时间读入格式的问题

方法一:直接使用SAS的PROC IMPORT,可以直接识别DATETIME格式(SAS版本9.2)

PROC IMPORT OUT= WORK.T5

DATAFILE= "C:\temp.csv"

DBMS=CSV REPLACE;

GETNAMES=NO;

DATAROW=1;

RUN;

方法二:比较麻烦点

/*因为datetime的informat中的date部分只能是ddmmmyy或ddmmmyyyy的格式,如31jan2007,所以你提供的格式如使用datetime格式,系统无法识别,因此要手动去分别读取时间和日期再整合成一个变量*/

data temp;

input date yymmdd10. time time10.;

datetime=date*24*3600+time;

format datetime datetime20.;

cards;

2010/07/01 07:47:35

2010/11/01 17:47:35

2010/07/12 03:47:35

run;

补充说明:

1.SAS ENTERPRISE GUIDE 4.2中对数据导入提供了非常方便的操作界面。可以指定每一个变量的属性及格式。推荐使用

2. Datetime 对应的几种格式,供参考

30May2000:10:03:17.2    DATETIME20.

30May00 10:03:17.2        DATETIME18.

30May2000/10:03            DATETIME15.

3. 格式规范问题

很多日期数据不规范,如 2010/7/1 7:47:35

而真正规范的应该是,2010/07/01 07:47:35

然而,往往正是这些不规范的数据导致了导入数据的出错。

  • 1
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值