楼主: barryzheng87
1948 4

SAS 日期运算问题 [推广有奖]

  • 0关注
  • 0粉丝

大专生

60%

还不是VIP/贵宾

-

威望
0
论坛币
754 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
289 点
帖子
13
精华
0
在线时间
78 小时
注册时间
2014-12-18
最后登录
2021-8-2

楼主
barryzheng87 在职认证  发表于 2016-11-10 18:09:08 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

%let month=07 ;
data temp ;
set temp ;
format date yymmdd10. ;
date="01&month.2016 "d + stmt_day;
run;

程序中%let month=07 应置换为%let month=JUL ,否会报错"01072016 "d为无效转换 ,有无办法可以再使用
%let month=07 的情况下也可以使 date="01&month.2016 "d + stmt_day 完成时间运算(不再设置新的宏变量或者直接写成“01JUL2016”D+STMT_DAY),谢谢!



二维码

扫码加我 拉你入群

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

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

关键词:format month FORMA mont date 程序

沙发
XYTo 发表于 2016-11-10 19:53:07
能不能把月份变成数值 7 用INTCK(“month”,date,m)
再用let 设置宏
多两个转换

藤椅
lovexialulu 发表于 2016-11-10 23:18:18 来自手机
input(2016-&month.-01,yymmdd10.)+startday

板凳
sonypam 在职认证  发表于 2016-11-11 03:58:45
Try below:

%let month=07;
data temp;
set temp;
format date yymmdd10.;
date=input("01-&month.-2016", ddmmyy10.) + stmt_day;
run;

报纸
prince315 在职认证  发表于 2016-11-11 09:24:23
%let month=07 ;
data temp ;
set temp ;
format date yymmdd10. ;
date=mdy(&month,1,2016) + stmt_day;
run;
使用mdy函数即可满足

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

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