楼主: Yvesliao
3610 6

[回归分析求助] 如何循环提取时间序列的回归系数 [推广有奖]

  • 0关注
  • 0粉丝

小学生

71%

还不是VIP/贵宾

-

威望
0
论坛币
0 个
通用积分
3.0000
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
49 点
帖子
4
精华
0
在线时间
13 小时
注册时间
2018-6-28
最后登录
2021-7-27

楼主
Yvesliao 发表于 2018-12-16 05:08:52 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
自变量是17个虚拟变量,因变量是730周的回报率(每一周的回报率包括7个国家,十个行业的数据)有两个条件命令:
constraint 1 _b[China]*(0.29746807) + _b[India]*(0.19031177) + _b[Brazil]*(0.2334608) + _b[Mexico]*(0.1002811) + _b[Russia]*(0.10360209) + _b[Indonesia]*(0.4513833) + _b[Turkey]*(0.029738) = 0

constraint 2 _b[OG]*(0.176596) + _b[BM]*(0.112091) + _b[ID]*(0.084282) + _b[CG]*(0.094251) + _b[HC]*(0.027162) + _b[CS]*(0.040809) + _b[TEL]*(0.094436) + _b[UT]*(0.039101) + _b[FN]*(0.277953) + _b[TEC]*(0.053319) = 0

下面这个是回归命令:
第一周:
cnsreg W_1 China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)
第二周:
cnsreg W_2 China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)
第三周:
cnsreg W_3 China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)
.
.
.
一周到第730周
cnsreg W_730 China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)

求问大神们,如何将每一周回归产出的下面这18个系数分别存为18个新的自变量,并且累计收集每周回归生产的系数呀?
_b[_cons]
_b[China]
_b[India]
_b[Brazil]
_b[Mexico]
_b[Russia]
_b[Indonesia]
_b[Turkey]
_b[OG]
_b[BM]
_b[ID]
_b[CG]
_b[HC]
_b[CS]
_b[TEL]
_b[UT]
_b[FN]
_b[TEC]

statsby _b: cnsreg W_1 China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)
这个命令只能保存一周的回归系数,而且会把这些数据存入另一个dta,我想把每周回归出来的一系列系数都存在原来的dta上
(附上数据)

二维码

扫码加我 拉你入群

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

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

关键词:002811 两个条件 虚拟变量 回归系数 回报率

回帖推荐

317792209 发表于2楼  查看完整内容

不知你的数据为什么这样排列,最好做成面板数据的形式,那样就容易多了。像你这种数据格式,在执行我的代码前,请准备大容量硬盘。因为要保存730组数据。用两组循环命令就轻松搞定了,就是占内存啊!!!代码如下:

沙发
317792209 在职认证  学生认证  发表于 2018-12-16 20:54:57
不知你的数据为什么这样排列,最好做成面板数据的形式,那样就容易多了。像你这种数据格式,在执行我的代码前,请准备大容量硬盘。因为要保存730组数据。用两组循环命令就轻松搞定了,就是占内存啊!!!代码如下:
  1. constraint 1 _b[China]*(0.29746807) + _b[India]*(0.19031177)+ _b[Brazil]*(0.2334608)+ _b[Mexico]*(0.1002811) + _b[Russia]*(0.10360209)+ _b[Indonesia]*(0.4513833) + _b[Turkey]*(0.029738) = 0
  2. constraint 2 _b[OG]*(0.176596) + _b[BM]*(0.112091) + _b[ID]*(0.084282)+ _b[CG]*(0.094251) + _b[HC]*(0.027162) + _b[CS]*(0.040809) +_b[TEL]*(0.094436) + _b[UT]*(0.039101) + _b[FN]*(0.277953) + _b[TEC]*(0.053319) = 0

  3. forvalue i=1/730 {
  4. statsby _b, saving(W_`i'): cnsreg W_`i' China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)
  5. }

  6. clear

  7. forvalue i=1/730 {
  8. append using W_`i'
  9. }
复制代码

藤椅
Yvesliao 发表于 2018-12-16 23:53:43
317792209 发表于 2018-12-16 20:54
不知你的数据为什么这样排列,最好做成面板数据的形式,那样就容易多了。像你这种数据格式,在执行我的代码 ...
非常感谢!!目的达到就行了
还有个问题:
在7个国家虚拟变量里面,最后一个虚拟变量因为共线被stata自动忽略掉了,10个行业变量的最后一个虚拟变量也被忽略掉了,一般来说7个国家只用设置6个虚拟变量,10个行业应该设置9个虚拟变量,才不会出现共线,但是这个模型就是要求有多少国家设置多少虚拟变量,有多少行业设置多少虚拟变量,而且每个变量的回归系数都要求出来,有没有什么方法,让stata不自动忽略掉变量呀?

板凳
黃河泉 在职认证  发表于 2018-12-17 08:01:30
Yvesliao 发表于 2018-12-16 23:53
非常感谢!!目的达到就行了
还有个问题:
在7个国家虚拟变量里面,最后一个虚拟变量因为共线被stata自 ...
怎么可能呢?你有看过别人报告所有的虚拟变量系数吗 (除非不包括常数项)?

报纸
黃河泉 在职认证  发表于 2018-12-17 08:02:28
Yvesliao 发表于 2018-12-16 23:53
非常感谢!!目的达到就行了
还有个问题:
在7个国家虚拟变量里面,最后一个虚拟变量因为共线被stata自 ...
不知道我的这个方法结果如何?请先安装 ssc install runby,
  1. use "E:\E7_log_returns.dta", clear

  2. set rmsg on
  3. reshape long W_, i(CountryName IndustryName) j(id)
  4. *sort id CountryName IndustryName

  5. cap program drop mycnsreg
  6. program define mycnsreg
  7.   constraint 1 _b[China]*(0.29746807)+_b[India]*(0.19031177)+_b[Brazil]*(0.2334608)+_b[Mexico]*(0.1002811)+_b[Russia]*(0.10360209)+_b[Indonesia]*(0.4513833)+_b[Turkey]*(0.029738) = 0
  8.   constraint 2 _b[OG]*(0.176596)+_b[BM]*(0.112091)+_b[ID]*(0.084282)+_b[CG]*(0.094251)+_b[HC]*(0.027162)+_b[CS]*(0.040809) +_b[TEL]*(0.094436)+_b[UT]*(0.039101)+_b[FN]*(0.277953)+_b[TEC]*(0.053319) = 0
  9.   cnsreg W_ China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC, c(1-2)
  10.   foreach v in China India Brazil Mexico Russia Indonesia Turkey OG BM ID CG HC CS TEL UT FN TEC {
  11.     gen W_`v'=_b[`v']
  12.   }
  13. end

  14. runby mycnsreg, by(id)
复制代码

地板
Yvesliao 发表于 2018-12-18 05:38:06
黃河泉 发表于 2018-12-17 08:01
怎么可能呢?你有看过别人报告所有的虚拟变量系数吗 (除非不包括常数项)?
他的结果是常数项不为零,并且每个虚拟变量都有系数,我看到都很惊讶,这是怎么做出来的

7
Yvesliao 发表于 2018-12-18 05:47:38
黃河泉 发表于 2018-12-17 08:02
不知道我的这个方法结果如何?请先安装 ssc install runby,
还是没有成功,最后一个虚拟变量的系数还是被忽略掉了

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

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