楼主: Reg1na
17103 7

[时间序列问题] stata如何在时间序列数据中求得前五年数据的标准差; [推广有奖]

  • 1关注
  • 3粉丝

高中生

65%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
333 点
帖子
28
精华
0
在线时间
22 小时
注册时间
2011-12-18
最后登录
2014-1-2

楼主
Reg1na 发表于 2011-12-18 16:26:54 |AI写论文
3论坛币
我现在有一组公司层面的数据,是按年度排序的,要求是对每一家公司计算出每个年度前五年的p-index指标的标准差,请高手指教!

code

year

pindex

000004.SZ

1997

0

000004.SZ

1998

0.023397

000004.SZ

1999

0.158893

000004.SZ

2000

0.086594

000004.SZ

2001

0.02353

000004.SZ

2002

-0.16236

000004.SZ

2003

0.041887

000004.SZ

2004

0.001892

000004.SZ

2005

0.070962

000004.SZ

2006

0.03211

000004.SZ

2007

-0.04094

000004.SZ

2008

0.008511

000004.SZ

2009

0.202141

000004.SZ

2010

-0.06372

000010.SZ

1997

0

000010.SZ

1998

0.055419

000010.SZ

1999

-0.04945

000010.SZ

2000

-0.08024

000010.SZ

2001

0.095835

000010.SZ

2002

0.087361

000010.SZ

2003

-0.15817

000010.SZ

2004

0.266685

000010.SZ

2005

0.034134

000010.SZ

2006

-0.07482

000010.SZ

2007

0.079979

000010.SZ

2008

-0.03121

000010.SZ

2009

0.049386

000010.SZ

2010

-0.03284

关键词:时间序列数据 Stata 序列数据 tata 时间序列 标准差 如何

沙发
tianyahuli 在职认证  发表于 2011-12-18 18:19:46
可以这样来做,首先drop if year>2001,然后by code:pindex,里面就有各公司前五年的标准差。
不为生命后悔

藤椅
tianyahuli 在职认证  发表于 2011-12-18 18:21:04
掉了一个su,by code:su pindex
不为生命后悔

板凳
Reg1na 发表于 2011-12-18 20:05:51
tianyahuli 发表于 2011-12-18 18:21
掉了一个su,by code:su pindex
谢谢哈~但是我要的是每一年的前五年pindex的标准差,也就是说2002年取得是1997-2001pindex的标准差,2003年就是1998-2002pindex的标准差,以此类推下来。。。。最好是stata直接生成新变量的,不然要手工抄下来吗~~

报纸
笨笨兔 发表于 2013-6-16 17:25:42
Reg1na 发表于 2011-12-18 20:05
谢谢哈~但是我要的是每一年的前五年pindex的标准差,也就是说2002年取得是1997-2001pindex的标准差,2003年 ...
楼主,你这个问题怎么解决的呢?我也遇到一个差不多和你一样的问题

地板
arlionn 在职认证  发表于 2013-6-17 10:09:57
   *-> 现金流 前向4年波动率(标准差)
    cap drop vc*
    egen vc = sd(cflow) if year<2003,by(id)
      replace vc =0 if year!=2002
    egen vc1= sd(cflow) if year>1999&year<2004,by(id)
      replace vc1 =0 if year!=2003
    egen vc2= sd(cflow) if year>2000&year<2005,by(id)
      replace vc2 =0 if year!=2004
    egen vc3= sd(cflow) if year>2001&year<2006,by(id)
      replace vc3 =0 if year!=2005
    egen vc4= sd(cflow) if year>2002&year<2007,by(id)
      replace vc4 =0 if year!=2006
    replace vc = vc+vc1+vc2+vc3+vc4
    replace vc =. if year<2002
    drop vc1-vc4
    label var vc "现金流的前向四年标准差"


Stata 暑期培训研讨班
(北京, 7.6-13 日,
http://baoming.pinggu.org/Default.aspx?id=93


已有 2 人评分学术水平 热心指数 信用等级 收起 理由
peeipei + 1 + 1 + 1 精彩帖子
新春笑颜 + 1 + 1 + 1 精彩帖子

总评分: 学术水平 + 2  热心指数 + 2  信用等级 + 2   查看全部评分

7
sungmoo 发表于 2013-6-17 10:12:58

8
15248162885 发表于 2016-11-27 20:39:15
笨笨兔 发表于 2013-6-16 17:25
楼主,你这个问题怎么解决的呢?我也遇到一个差不多和你一样的问题
楼主,请问您的这个问题是怎样解决的呢?

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2025-12-29 07:07