全部版块 我的主页
论坛 计量经济学与统计论坛 五区 计量经济学与统计软件 Stata专版
1071 2
2016-12-07
各位老师,同学。本人不才,遇到对一个变量按照日期时间滚动求平均的问题。求教各位,不胜感激!
数据结构请见下图:
rp_entity_id 是代表企业, 数据集中有n多个不同的企业
tc0是一条关于这个企业的财经新闻的发布时间 (比如第一个observation时间是2007年1月1日06:06)
td1是一条关于这个企业的财经新闻的发布日期(比如第一个observation时间是2007年1月1日)
css是这条新闻对于企业的的评价分数sentiment score
-------------------------------------------------
1) 我想计算的一组变量:AveCss1h 代表以当前新闻发布时间为起点,此后forward第一个小时之内所有新闻的sentiment scores的平均值。AveCss2h,AveCss3h...AveCssnh以此类推为forward第二,第三,直到第n个小时之内每小时所有新闻的sentiment scores的平均值。
(比如,2007年1月1日06:06, forward第一小时是06:06-07:06,forward第二个小时是07:06-08:06)
1) 我想计算的另一组变量:AveCss1d 代表以当前新闻发布时间为起点,此后forward第一天之内所有新闻的sentiment scores的平均值。AveCss2d,AveCss3d...AveCssnd以此类推为forward第二,第三,直到第n天之内每天所有新闻的sentiment scores的平均值。(比如,2007年1月1日,forward第一天是1月1日-1月2日,forward第二天是1月2日-1月3日)
----------------------------------------------------
请教各位这个rolling forward average应当怎样编程。万分感谢!
Capture.PNG

二维码

扫码加我 拉你入群

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

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

全部回复
2016-12-8 08:47:28
这个还是比较有意思的。之前我也想做相关的研究来着,但是后来因为各种原因就没有继续了。
二维码

扫码加我 拉你入群

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

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

2016-12-8 11:23:40
写了一个loop计算1day,可是有如下报错
use "<data path>"
gen groupmean=.
. local N=_N
. forval i=1/`N'{
  2. sort rp_entity_id
  3. by rp_entity_id: egen groupmean=mean(css)
  4. inrange ( td0[`i'+1]-td0[`i'],1,2)
  5. replace groupmean=groupmean in `i'
  6. }
unrecognized command:  inrange
r(199);



此外尝试了 inrange (td0 [`i'] ,  td0 [`i'] , td0[`i'] + 1 day)
报错
inrange not found
r(111);


二维码

扫码加我 拉你入群

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

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

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群