楼主: lemonxinran
1269 4

[有偿编程] SAS将文本型数据转换为日期时间型-季度数据 [推广有奖]

  • 0关注
  • 1粉丝

已卖:2份资源

讲师

30%

还不是VIP/贵宾

-

威望
0
论坛币
1155 个
通用积分
6.0000
学术水平
1 点
热心指数
1 点
信用等级
1 点
经验
10334 点
帖子
188
精华
0
在线时间
605 小时
注册时间
2010-10-25
最后登录
2025-4-2

楼主
lemonxinran 发表于 2022-6-8 12:10:40 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
求助:我的数据为:
quarter
1983-1
1983-2
1983-3
...;
属于文本型数据。我现在需要将其转换为日期时间型的季度数据,即1983Q1,1983Q2等。
使用input(quarter, yyq.); 生成的新变量都是缺失值。
请问问题出在哪里了?谢谢。

二维码

扫码加我 拉你入群

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

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

关键词:数据转换 季度数据 文本型 Quarter Input

沙发
乐天天12300 发表于 2022-6-8 14:33:02
data _null_;
a="1983-1";
b=input(compress(a,"-"),yymmn6.);
c=put(b,yyq.);
put c;
run;

藤椅
乐天天12300 发表于 2022-6-8 14:39:12
乐天天12300 发表于 2022-6-8 14:33
data _null_;
a="1983-1";
b=input(compress(a,"-"),yymmn6.);
data _null_;
format b yyq.;
a="1983-1";
b=input(compress(a,"-"),yymmn6.);
put b;
run;

板凳
乐天天12300 发表于 2022-6-8 14:48:52
data _null_;
format b yyq6.;
a="1983Q1";
b=input(a,yyq6.);
put b;
run;
因为你的原始数据是个日期格式的文本数据,不是年季度格式的,所以需要先转为日期格式,才能转为年季度。

报纸
lemonxinran 发表于 2022-6-9 11:01:24
乐天天12300 发表于 2022-6-8 14:48
data _null_;
format b yyq6.;
a="1983Q1";
非常感谢,我没有解释清楚,开始的数据就是季度数据,不是月度数据。不过我理解你的思路了,已经解决了。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-1-8 09:23