12308 27

[程序分享] 求助SAS表中日期格式修改!!!!!跪谢!!! [推广有奖]

  • 0关注
  • 0粉丝

初中生

52%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
88 点
帖子
18
精华
0
在线时间
11 小时
注册时间
2018-1-23
最后登录
2019-5-5

楼主
好人一世平安 发表于 2018-1-23 13:48:08 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
有一列数据是时间 例如2001-01-01 2002-01-01 一列下来很多行  
如何在SAS中用语法将他们转换为 20010101 20020101这种数字  去掉横杠!!!  
还有如果能再多教一下直接将上述那种字符转为数值的就更好啦 谢谢!!!
二维码

扫码加我 拉你入群

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

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

关键词:求助 政治经济学 课件 运行 毕业论文

沙发
流水不朽 发表于 2018-1-23 14:00:07
1、要先看你原始数据,是日期格式,还是字符串格式
2、日期格式好办
data  tmp;
   format dte_1 yymmdd10.  dte_2 yymmddn8.;
        dte_1="1JAN2001"d;
        dte_2=dte_1;
run;
3、字符串格式 转 日期格式
data  tmp;
   format dte_1 $10.  dte_2 yymmddn8.;
        dte_1="2001-01-01";
        dte_2=mdy(input(scan(dte_1,2,'-'),8.),input(scan(dte_1,3,'-'),8.),input(scan(dte_1,1,'-'),8.));
run;
已有 1 人评分经验 收起 理由
eijuhz + 20 热心帮助其他会员

总评分: 经验 + 20   查看全部评分

藤椅
好人一世平安 发表于 2018-1-23 15:34:42
流水不朽 发表于 2018-1-23 14:00
1、要先看你原始数据,是日期格式,还是字符串格式
2、日期格式好办
data  tmp;
但是我要修改上万列的数据 不只有那一个  那我应该怎么修改你跟我说的步骤呢~万分感谢~

板凳
好人一世平安 发表于 2018-1-23 15:34:45
流水不朽 发表于 2018-1-23 14:00
1、要先看你原始数据,是日期格式,还是字符串格式
2、日期格式好办
data  tmp;
但是我要修改上万列的数据 不只有那一个  那我应该怎么修改你跟我说的步骤呢~万分感谢~

报纸
好人一世平安 发表于 2018-1-23 15:42:08
流水不朽 发表于 2018-1-23 14:00
1、要先看你原始数据,是日期格式,还是字符串格式
2、日期格式好办
data  tmp;
上面那个步骤只改了2001-01-01的 并没有整列日期全部改掉呀~

地板
好人一世平安 发表于 2018-1-23 15:46:29
流水不朽 发表于 2018-1-23 14:00
1、要先看你原始数据,是日期格式,还是字符串格式
2、日期格式好办
data  tmp;
有没有办法写入那一列最上方的变量的总名称然后把整列一起修改掉呀?

7
流水不朽 发表于 2018-1-23 16:38:03
dte_1 就是列名 啊?你有很多列是这样的日期嚒?

如果是日期格式,直接format 一下 列名(变量名)就行了
如果是字符串格式,产生个新的列,赋值就行了。

明白不?

8
好人一世平安 发表于 2018-1-23 16:58:12
流水不朽 发表于 2018-1-23 16:38
dte_1 就是列名 啊?你有很多列是这样的日期嚒?

如果是日期格式,直接format 一下 列名(变量名)就行了 ...
第一次接触这个东西有点茫然
我的那个数据库名字叫week  存在名称为A的数据库中
里面有10个变量  其中有3个变量是日期的 统统都是有-一横杠
这三个里面 第一个变量Trdwnt的日期只有年月 2005-01
          第二个变量Opndt和第三个变量Capchgdt都是有年月日的 2005-01-01这样的
大神能帮我编一些程序步骤让我学一下吗真的是太感谢你了!![cry]自己研究这个步骤两天了

9
流水不朽 发表于 2018-1-23 17:01:33
Trdwnt 这个肯定不是日期格式啦,
处理: Trdwnt = tranwrd(Trdwnt,'-','');
Opndt和Capchgdt,你看下变量格式?贴上来看看

10
好人一世平安 发表于 2018-1-23 17:18:08
流水不朽 发表于 2018-1-23 17:01
Trdwnt 这个肯定不是日期格式啦,
处理: Trdwnt = tranwrd(Trdwnt,'-','');
Opndt和Capchgdt,你看下变量 ...
图片上传不了 我口述哈
Opndt和Capchgdt这两个都是2005-01-01这样的  然后它们的format都是$20.  我再按进去里面的选项就是$

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

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