楼主: tyw226
9787 5

[问答] sas返回日期所在周的周一或周日 [推广有奖]

  • 0关注
  • 0粉丝

本科生

26%

还不是VIP/贵宾

-

威望
0
论坛币
445 个
通用积分
1.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
1154 点
帖子
58
精华
0
在线时间
57 小时
注册时间
2005-8-22
最后登录
2017-6-26

楼主
tyw226 发表于 2015-6-10 11:08:32 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
请教个日期转化问题。
我有个连续的日期数据,2015年1月1日到今天的。
我想把每个日期对应到各自所在周的周一或周日。
sas里面怎么弄啊?

二维码

扫码加我 拉你入群

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

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

关键词:日期数据 怎么弄

沙发
sas那个石家庄人 发表于 2015-6-10 12:09:12
你的意思是只导出是周一或周日的日期么

如果是这样可以利用 where  weekday(variable_name) in (1,2);
1代表星期天 2代表星期一

藤椅
tyw226 发表于 2015-6-10 13:05:58
sas那个石家庄人 发表于 2015-6-10 12:09
你的意思是只导出是周一或周日的日期么

如果是这样可以利用 where  weekday(variable_name) in (1,2);  ...
不是这个意思,我的意思如下:(相当于新增一个变量)
6.1对应6.1
6.2对应6.1
6.3对应6.1
。。。。
6.7对应6.1
6.8对应6.8
6.9对应6.8

板凳
sas那个石家庄人 发表于 2015-6-10 13:14:14
tyw226 发表于 2015-6-10 13:05
不是这个意思,我的意思如下:(相当于新增一个变量)
6.1对应6.1
6.2对应6.1
我明白了 感觉用retain 结合 一些if 语句应该可以实现   

但是这些日期只能对应其中一天不是么 万一那周既有周一又有周日该怎么办呢

报纸
letsgoaway 发表于 2015-6-11 14:02:39
weekday(date)返回的是日期date是当周第几天,SAS默认星期日是当周第一天。
例:
data x;
format date ddmmyy8. date2 ddmmyy8.;
input date ddmmyy8.;
week=weekday(date);
date2=date-week+1;
cards;
01062015
02062015
03062015
04062015
05062015
06062015
07062015
08062015
09062015
;
run;

如果要每周的星期一,date2那里加2就可以了。

地板
tyw226 发表于 2015-6-11 15:34:49
letsgoaway 发表于 2015-6-11 14:02
weekday(date)返回的是日期date是当周第几天,SAS默认星期日是当周第一天。
例:
data x;
谢谢,我后来就是这么搞定的。

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

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