4545 5

SAS程序导出表为excel格式后,日期格式变成文本怎么办? [推广有奖]

  • 1关注
  • 1粉丝

已卖:1份资源

本科生

89%

还不是VIP/贵宾

-

威望
0
论坛币
28 个
通用积分
4.7181
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
1277 点
帖子
74
精华
0
在线时间
99 小时
注册时间
2014-11-14
最后登录
2024-4-19

楼主
小台芒,好吃 发表于 2016-11-2 16:31:10 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
我在SAS表中生成一个日期格式,形如“2016-01-01 00:00:00” , format 是我自己定义的日期格式

用proc import data=表名 outfile="" dbms=excel replace;
sheet="sheet";
run;

结果输出的excel中这个日期格式是文本格式,形如”1790899200“

求教求教,如何解决这一问题!!



二维码

扫码加我 拉你入群

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

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

关键词:Excel格式 sas程序 EXCEL exce xcel excel 程序

沙发
进击的小瓶盖 发表于 2016-11-2 16:42:09
不知道怎么回事欸。。。你要不把时间转成字符型变量试试?

藤椅
l1i2n3i4n5g 在职认证  发表于 2016-11-2 17:24:14
把date和time分开 ,导出excel,把date和time在excel中直接相加,设置单元格格式>自定义
data test;
informat x ymddttm30.;
input x;
format x datetime30.;
cards;
2016-01-01 00:00:00
;
run;

data test1;
format date yymmdd10. time time12.;
set test;
date=datepart(x);
time=timepart(x);
run;

板凳
小台芒,好吃 发表于 2016-11-3 09:35:36
l1i2n3i4n5g 发表于 2016-11-2 17:24
把date和time分开 ,导出excel,把date和time在excel中直接相加,设置单元格格式>自定义
data test;
info ...
额,运行并proc export 了一下,输出的excel中显示的日期格式的“2016/1/1”,还是得去格式里的自定义,定义成“yyyy-mm-dd hh:mm:ss”格式,呵呵,感觉这是SAS 的缺陷啊,是不是无解的?
难道是因为excel中本身没有我想要的这种格式,所以输出不出来吗?
额,还是太懒了,我还是输出后手动设置一下吧,谢谢各位!!

报纸
小台芒,好吃 发表于 2016-11-3 09:37:42
进击的小瓶盖 发表于 2016-11-2 16:42
不知道怎么回事欸。。。你要不把时间转成字符型变量试试?
因为输出的结果是直接导进系统的,我希望尽量不需要二次操作,也怕原本的日期型格式变成文本型以后读入系统不能识别。。我决定每次输出以后手动修改一下了,哈哈。。。

地板
will-jiang 发表于 2016-11-3 14:09:12
你应该同时定义informat ,format 是读入,informat是设置导出的格式。

“If informats are instructions for reading data, then you can view formats as instructions for outputting data.”

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-21 19:22