我正在尝试分析国家证券交易所数据。我想使用 pandas 计算每只股票与指数的协方差(漂亮),然后计算每只股票的贝塔值。我该怎么办呢?
我找到了计算 1 列与另一列的协方差的方法,但我的数据框有大约 36 个股票收盘价列和 1 个指数收盘价列。如何使用单个命令计算索引列的所有列的协方差?
最佳答案
您首先需要计算价格的返回(您使用的是调整后的收盘价,对吧?)。
returns = df.pct_change()
接下来,您将协方差计算为一个系列(我使用字典理解来创建该系列):
index = 'SPY' # Change to your ticker for the index.
s = pd.Series({symbol: returns[index].cov(returns[symbol])
for symbol in df
if symbol != index})
这将为您提供每只股票与指数的协方差。
关于python - 我想找到 pandas 数据框中 1 列与所有其他列之间的协方差,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32786795/