楼主: deem
1996 0

[学习分享] SAS日期(时间)数据对齐 [推广有奖]

  • 2关注
  • 44粉丝

已卖:1975份资源

学科带头人

52%

还不是VIP/贵宾

-

威望
0
论坛币
7002 个
通用积分
1029.5476
学术水平
215 点
热心指数
237 点
信用等级
205 点
经验
71799 点
帖子
978
精华
0
在线时间
3013 小时
注册时间
2009-7-30
最后登录
2026-1-11

楼主
deem 学生认证  发表于 2017-8-17 13:15:24 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
在finance领域,将时间序列对齐(align)是数据处理中经常要用到的,这种对齐可能是时点的对齐(point-in-time),如匹配公司上一年末的财报信息,也可能要对齐到一个区间(interval),如根据过去6个月的股票收益构建投资组合,根据过去8个季度的盈余计算盈余的波动性。利用SAS时间序列处理函数INTNX可以比较容易的移动时间序列数据,请看下面的例子。

这样能够最好的利用日期数据的特性,而不是将日期数据仅仅作为数值型数据进行运算。
  1. data datetime;
  2.     input stkcd date ;
  3.     date_in_point1=intnx('month', date, 1, 'E');     /* 移动到下个月初 */
  4.     date_in_point2=intnx('month', date, 1, 'B');     /* 移动到下个月末 */
  5.     date_in_point3=intnx('year', date, -1, 'E');     /* 移动到去年末 */
  6.     date_in_point4=intnx('qtr', date, -1, 'E');      /* 移动到上个季度底 */
  7.     * 取[-1, -13]月度窗口;
  8.     date_interval_right1=intnx('month', date, -2, 'E');
  9.     date_interval_left1=intnx('month', date, -13, 'B');
  10.     * 取过去8个季度;
  11.     date_interval_right2=intnx('qtr', date, -1, 'E');
  12.     date_interval_left2=intnx('qtr', date, -8, 'B');

  13.     format date date_in_point1 date_in_point2 date_in_point3 date_in_point4
  14.     date_interval_left1 date_interval_left2 date_interval_right1 date_interval_right2
  15.     mmddyy10.;
  16.    
  17.     label   date_in_point1='移动到下个月初'
  18.             date_in_point2='移动到下个月初'
  19.             date_in_point3='移动到去年末'      
  20.             date_in_point4='移动到上个季度底'
  21.             date_interval_left1='取[-1, -13]月度窗口开始'  
  22.             date_interval_right1='取[-1, -13]月度窗口结束'
  23.             date_interval_left2='取过去8个季度开始'  
  24.             date_interval_right2='取过去8个季度结束';
  25.             
  26. datalines;
  27. 0000001 20000
  28. 0000001 20030
  29. 0000002 20060
  30. 6000003 20090
  31. 6000020 20120
  32. ;
  33. run;

  34. proc print data=datetime label; run;
复制代码

二维码

扫码加我 拉你入群

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

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

关键词:datetime Interval Finance 时间序列数据 Financ

已有 1 人评分学术水平 热心指数 收起 理由
eijuhz + 1 + 2 鼓励积极发帖讨论

总评分: 学术水平 + 1  热心指数 + 2   查看全部评分

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

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