我在pandaframe(Python)中迭代不同的组/股票经纪人/公司时遇到问题。我想对每个股票代码=公司进行单独的回归,并将值存储在新的pandaframe中
下面给出了一个简短的数据样本:(注意,这些值是随机的)
Date Ticker Company Price HML SMB ER
21/06/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
24/06/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
25/06/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
26/06/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
27/06/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
28/06/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
01/07/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
02/07/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
03/07/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
05/07/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
08/07/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
09/07/2002 ANTQ A.A. IMPORT 0,009 0,015 0,028 0,037
10/07/2002 ANTQ A.A. IMPORT 0,101 0,015 0,028 0,037
11/07/2002 ANTQ A.A. IMPORT 0,101 0,015 0,028 0,037
12/07/2002 ANTQ A.A. IMPORT 0,101 0,015 0,028 0,037
21/06/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
24/06/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
25/06/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
26/06/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
27/06/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
28/06/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
01/07/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
02/07/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
03/07/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
05/07/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
08/07/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
09/07/2002 AIR AAR CORP 0,009 0,015 0,028 0,037
10/07/2002 AIR AAR CORP 0,101 0,015 0,028 0,037
11/07/2002 AIR AAR CORP 0,101 0,015 0,028 0,037
12/07/2002 AIR AAR CORP 0,101 0,015 0,028 0,037
其思路如下:
首先,我想用Fama和French(ER,HML和SML)因子对超额收益(return)进行回归。然后我想用这个模型来预测模型中的误差,从模型的预测超额收益中减去实际超额收益
error = smf.ols(formula="df['Return'] ~ + df['ER']+ df['HML'] + df['SML']+ ", data= df).fit().predict()-df['p']
因为我有一个横截面数据集(行上有标记器),所以我希望每个标记器运行一个回归,并将每个标记器的错误值存储在一个新的数据框中。导致这个for循环,我知道这是错误的,但给出一个想法
grouped_df= df.groupby("Ticker")
for group in grouped_df:
error['group'] = smf.ols(formula="df['Return'] ~ + df['ER']+ df['HML'] + df['SML']+ ", data= df).fit().predict()-df['p']
我能得到帮助吗
提前谢谢大家,
延斯
目前没有回答
相关问题 更多 >
编程相关推荐