楼主: 逆风也要浪
1482 1

[学习分享] 分组回归 [推广有奖]

  • 0关注
  • 1粉丝

已卖:29份资源

硕士生

17%

还不是VIP/贵宾

-

威望
0
论坛币
33 个
通用积分
15.6803
学术水平
3 点
热心指数
3 点
信用等级
3 点
经验
257 点
帖子
16
精华
0
在线时间
259 小时
注册时间
2018-7-25
最后登录
2025-12-26

楼主
逆风也要浪 发表于 2021-4-9 15:14:03 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币
在得到fama因子(国泰安数据库有)模型后,需要计算每个股票的阿尔法进而计算风险调整收益率,因此需要进行对每个股票进行ols,也就是需要进行分组回归。
这里需要引入一个包“data.table",结合之前常用的”tidyverse“包。假设因子模型存放在”test.csv“中,为了方面,假定回归模型为:y~x1+x2+x3,stock为各股票代码,


library (tidyverse)
library(data.table)
test<-read_csv("test.csv")#肯定还有更好的方法读取,但是现在只会这样
dt<-data.table(test)
result<-dt[,as.list(coef(lm(y~x1+x2+x3,data=.SD))),keyby=.(stock)]

这里dt[i,j,k]为data.table数据格式的特殊表示形式,i为dt数据中的行,k为分组依据,j为运算表达式,方括号里面的.(stock)的意思是读取dt数据中的stock这一列数据,keyby=.(stock)意思是以stock这一列分组依据;.SD的意思是读取分组后的子集,也就是stock的各个分组的子集。coef为提取回归方程的系数,as.list意思是输出的格式为一个向量


二维码

扫码加我 拉你入群

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

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

关键词:分组回归 Library 国泰安数据库 Table BRARY

沙发
szxship 发表于 2021-4-9 20:59:20
  直接
dt <- fread('test.csv')

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2026-2-8 07:47