楼主: 慕亚宇
12320 24

[面板数据求助] stata中 面板数据的变化率怎么写命令 [推广有奖]

11
慕亚宇 发表于 2018-1-31 18:12:43
黃河泉 发表于 2018-1-31 17:59
请不要用图片!
抱歉,之前不太会用这个功能,刚试了一下,数据就是下面的 只有“证券代码 股东证券代码 统计截止日期”这三个变量同时运用才能确认唯一的“持股数量” 而我想计算的是持股数量以半年为单位的变化率 就是(本期持股数量-上期持股数量)/本期持股数量   这个是我的数据 之前只是例子 抱歉给您带来的不便 也非常感谢您!
input str6 证券代码 str10 统计截止日期 double 持股数量 str6 股东证券代码
"000562" "1999-12-31"   25410000 "000009"
"600000" "1999-12-31"   50000000 "600642"
"000562" "2000-06-30"   27951000 "000009"
"600016" "2000-06-30"  1.170e+08 "000758"
"000562" "2000-06-30"   27951000 "000850"
"600016" "2000-06-30"  179426000 "000876"
"600000" "2000-06-30"   50000000 "600642"
"600000" "2000-06-30"   50000000 "600642"
"600000" "2000-06-30"   40000000 "600648"
"600016" "2000-06-30"  1.690e+08 "600811"
"600000" "2000-06-30"   38000000 "600834"
"000562" "2000-12-31"   27951000 "000009"
"600016" "2000-12-31"   90000000 "000758"
"600016" "2000-12-31"  138020000 "000876"
"600000" "2000-12-31"   50000000 "600642"
"600000" "2000-12-31"   40000000 "600648"
"600016" "2000-12-31"  1.300e+08 "600811"
"600016" "2001-12-31"  1.170e+08 "000758"
"600016" "2001-12-31"  179426000 "000876"

12
慕亚宇 发表于 2018-1-31 18:15:06
蓝色 发表于 2018-1-31 17:54
那你就提供一个能真正表示你的数据
的样本数据
用dataex就能抽取你的部分数据
谢谢您,之前不太会用这个功能,刚试了一下,数据就是下面的 只有“证券代码 股东证券代码 统计截止日期”这三个变量同时运用才能确认唯一的“持股数量” 而我想计算的是持股数量以半年为单位的变化率 就是(本期持股数量-上期持股数量)/本期持股数量  

input str6 证券代码 str10 统计截止日期 double 持股数量 str6 股东证券代码
"000562" "1999-12-31"   25410000 "000009"
"600000" "1999-12-31"   50000000 "600642"
"000562" "2000-06-30"   27951000 "000009"
"600016" "2000-06-30"  1.170e+08 "000758"
"000562" "2000-06-30"   27951000 "000850"
"600016" "2000-06-30"  179426000 "000876"
"600000" "2000-06-30"   50000000 "600642"
"600000" "2000-06-30"   50000000 "600642"
"600000" "2000-06-30"   40000000 "600648"
"600016" "2000-06-30"  1.690e+08 "600811"
"600000" "2000-06-30"   38000000 "600834"
"000562" "2000-12-31"   27951000 "000009"
"600016" "2000-12-31"   90000000 "000758"
"600016" "2000-12-31"  138020000 "000876"
"600000" "2000-12-31"   50000000 "600642"
"600000" "2000-12-31"   40000000 "600648"
"600016" "2000-12-31"  1.300e+08 "600811"
"600016" "2001-12-31"  1.170e+08 "000758"
"600016" "2001-12-31"  179426000 "000876"

13
黃河泉 在职认证  发表于 2018-1-31 18:20:04
慕亚宇 发表于 2018-1-31 18:15
谢谢您,之前不太会用这个功能,刚试了一下,数据就是下面的 只有“证券代码 股东证券代码 统计截止日期” ...
"想计算的是持股数量以半年为单位的变化率"是指谁的持股?个别股东还是所有股东?

14
慕亚宇 发表于 2018-1-31 20:12:28 来自手机
是的 就是所有股东 出现在数据中的 “证券id”和“固定证劵id”确认的唯一“持股数量” 就是计算所有持股数量以半年为单位的变化率

15
黃河泉 在职认证  发表于 2018-2-1 09:01:37
慕亚宇 发表于 2018-1-31 20:12
是的 就是所有股东 出现在数据中的 “证券id”和“固定证劵id”确认的唯一“持股数量” 就是计算所有持股数 ...
1. 以后请用回复。2. 请试试
  1. sort 证券代码 统计截止日期 股东证券代码
  2. gen ymd = date(统计截止日期, "YMD")
  3. format ymd %td
  4. gen hy = hofd(ymd)
  5. format hy %th
  6. collapse (sum) 持股数量, by(证券代码 hy)

  7. egen id = group(证券代码)
  8. xtset id hy
  9. gen g =  (持股数量-L.持股数量)/L.持股数量
复制代码

16
墨韵瑶台 在职认证  发表于 2018-2-1 16:15:55
黃河泉 发表于 2018-2-1 09:01
1. 以后请用回复。2. 请试试
好的,黄老师!以后一定注意!这套code简直太好用,行云流水一般!真是太感谢老师了!其实我开始用stata不久,总是觉得有时候很难实现自己想要的效果,请问老师有没有推荐的可以学习的视频或者教材或者方法,任何老是觉得好用的,能否给我推荐一下!感激不尽!

17
黃河泉 在职认证  发表于 2018-2-1 17:25:28
墨韵瑶台 发表于 2018-2-1 16:15
好的,黄老师!以后一定注意!这套code简直太好用,行云流水一般!真是太感谢老师了!其实我开始用stata不 ...
你搜寻一下论坛之资讯,或许几年后,我会出一本实用的 Stata 用书,哈哈。

18
墨韵瑶台 在职认证  发表于 2018-2-1 17:38:59
黃河泉 发表于 2018-2-1 17:25
你搜寻一下论坛之资讯,或许几年后,我会出一本实用的 Stata 用书,哈哈。
哈哈 好哒!坐等您的著作!

19
墨韵瑶台 在职认证  发表于 2018-2-1 17:55:50
黃河泉 发表于 2018-2-1 17:25
你搜寻一下论坛之资讯,或许几年后,我会出一本实用的 Stata 用书,哈哈。
黄老师,您好!再请教一下,
1. 您之前写的code里面    egen id = group(证券代码)   是把相同证券代码的“持股数量”全部按年份合并了吗?因为有些“证券代码”在相同的“统计截止日期”下,有好几个“股东证券代码”。
2. 所以,之后生成的面板数据 只有 id 和 hy 了,等于把 两个不同的代码合并成一个了? 是不是面板数据只允许出现一个id?

20
黃河泉 在职认证  发表于 2018-2-1 18:00:36
墨韵瑶台 发表于 2018-2-1 17:55
黄老师,您好!再请教一下,
1. 您之前写的code里面    egen id = group(证券代码)   是把相同证券代码的 ...
1. 是的。2. 面本资料有很多 id,很多 hy,但不可以同时有相同 (两个或以上) 的 id 与 hy。

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

本版微信群
加好友,备注jltj
拉您入交流群
GMT+8, 2026-1-1 08:39