所以我有一个包含30只股票收盘价的数据集。我必须找出每只股票的平均年化收益率和波动率。我对这个公式没有问题,我似乎无法计算出如何迭代每个股票,然后找到它的收盘价,然后将每个收盘价保存在不同的列中。你知道吗
我尝试过:
我尝试遍历这些列,然后返回这些列,然后将函数赋给如下变量:
def get_columns(df):
for columns in df:
return columns
namesOfColumn = get_columns(df)
当我检查namesOfColumn的类型时,它返回str,当我检查字符串的内容时,它是数据集中第一列的标题。你知道吗
我也试过了
def get_columns(df):
for columns in df:
column = df[columns]
for column in df[columns]:
stock = column
returns = df[stock].pct_change()
我当前的数据帧看起来像
A Close B Close
0 823.45 201.9
1 824.90 198.9
2 823.60 198.3
A&B是公司的名称。你知道吗
这样总共有30列,每列大约有240个值。你知道吗
A Return B Return
0 xxxx.xx xxxx.xx
我希望我的输出像这样 我想找到每只股票的年回报率,然后将回报率保存在字典中,然后将字典转换为数据帧。你知道吗
假设您的数据帧的索引是datetime格式,您可以只使用pandas重采样(下面我每年重采样一次-请参阅pandas重采样文档了解更多信息),然后执行以下操作:
由于您的数据帧似乎没有使用datetime编制索引,因此必须首先重新编制索引(然后应用上面显示的代码),如下所示:
相关问题 更多 >
编程相关推荐