楼主: robertmou05
5113 7

[原创博文] 日期型数据的格式转换 [推广有奖]

  • 0关注
  • 0粉丝

大专生

46%

还不是VIP/贵宾

-

威望
0
论坛币
76 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
2851 点
帖子
23
精华
0
在线时间
43 小时
注册时间
2009-8-7
最后登录
2023-12-13

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
问题1:数据集A 中有日期变量day1
day
1974nana
--------
19970430
1973ukuk
19831226
1983ukuk
2001----
198912--
现在要把未知的部分都变为“UK”即
day
1974ukuk
ukukukuk
19970430
1973ukuk
19831226
1983ukuk
2001ukuk
198912uk 应该怎么编这段程序?

问题2:数据集B中有日期变量day2
day2
20090630
20090311
20090327
20090318
20090507
现在要把格式从yyyymmdd改为dd-mm-yyyy的样子,应该如何编程?
谢谢各位,急等答案!
二维码

扫码加我 拉你入群

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

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

关键词:格式转换 日期型 日期变量 Day 数据集 格式转换 程序 如何

回帖推荐

sushe1527 发表于2楼  查看完整内容

data raw; input day$; cards; 1974nana ******** 1983ukuk ........ &&&&&&&&& 2001---- 19891--- 198912-- 1989123- ;run; data final; set raw; m="ukukukukukukukukukukukukukukukukuk"; new=substr(compress(day||m,'- * . &'),1,8); /*把所有缺失字符类型填进去*/ run; ------------------------------------------------------------------- 直接输入类 data a; input day2 : yymmdd10.; format ...

本帖被以下文库推荐

沙发
sushe1527 发表于 2010-4-26 13:26:04 |只看作者 |坛友微信交流群
data raw;
input day$;
cards;
1974nana
********
1983ukuk
........
&&&&&&&&&
2001----
19891---
198912--
1989123-
;run;
data final;
set raw;
m="ukukukukukukukukukukukukukukukukuk";
new=substr(compress(day||m,'- * . &'),1,8); /*把所有缺失字符类型填进去*/
run;


-------------------------------------------------------------------
直接输入类
data a;
input day2 : yymmdd10.;
format day2  ddmmyy10.;
cards;
20090630
20090311
20090327
20090318
20090507
;run;

非直接输入类
data a;
input k;
cards;
20090630
20090311
20090327
20090318
20090507
;run;
data b;
set a;
date=input(put(k,8.),yymmdd10.);
format date ddmmyy10.;
run;
已有 2 人评分经验 论坛币 学术水平 热心指数 收起 理由
bakoll + 3 + 3 精彩帖子
crackman + 20 + 1 + 1

总评分: 经验 + 23  论坛币 + 3  学术水平 + 1  热心指数 + 1   查看全部评分

使用道具

藤椅
crackman 发表于 2010-4-26 13:36:58 |只看作者 |坛友微信交流群
第一个用正则表达式

使用道具

板凳
robertmou05 发表于 2010-4-26 14:38:03 |只看作者 |坛友微信交流群
3# crackman

麻烦你能不能说的明白一点,刚开始学SAS,具体的程序是怎么写的?
数据集里的数据量蛮大的。

使用道具

报纸
robertmou05 发表于 2010-4-26 14:43:41 |只看作者 |坛友微信交流群
2# sushe1527
请问把日期的那些缺失值都变为“UK”后,还可以把他变为dd-mm-yyyy的格式吗?
我用了一下你的方法,好像有“UK”的数值转换后都变为缺失了
麻烦你了

使用道具

地板
sushe1527 发表于 2010-4-26 14:54:03 |只看作者 |坛友微信交流群
robertmou05 发表于 2010-4-26 14:43
2# sushe1527
请问把日期的那些缺失值都变为“UK”后,还可以把他变为dd-mm-yyyy的格式吗?
我用了一下你的方法,好像有“UK”的数值转换后都变为缺失了
麻烦你了
uk直接变成dd-mm-yyyy么?那和凤姐变成范冰冰一样有难度

使用道具

7
crackman 发表于 2010-4-26 15:22:50 |只看作者 |坛友微信交流群
其实楼主要考虑你为什么这样变换
是方法问题还是什么呢
如果要变
用substr吧
但是太牵强了

使用道具

8
anzhiliang 发表于 2010-4-26 22:13:11 |只看作者 |坛友微信交流群
其实uk就是异常又何必把uk在变成日期型的呢

使用道具

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

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-5-2 21:56