我有两个系列,一个是关于公司股票在多个交易所的交易量(很多股票在所有交易所交易)。另一个系列是每只股票的标准差(每家公司,无论它们在哪个交易所交易)。现在,我一直在尝试创建一个循环,用第二个系列中的组合标准偏差来划分各个股票(在第一个系列中)的数量。我做了如下循环:
#所有交易所每只股票成交量的标准偏差(工作正常)
stdev_volume = Main_df_retvol.groupby(['pair_name'], sort=False)['volume'].std()
#循环将体积除以相应库存体积的标准偏差。(循环不工作)
df_vol_std = []
for i in range(len(stdev_volume)):
if stdev_volume[i]['pair_name'] == Main_df_retvol['pair_name']:
df_vol_std = Main_df_retvol['vol'].divide(other = stdev_volume['Volume'])
print(df_vol_std)
任何帮助都将不胜感激
让我们把它分解一下。。。 获取索引以选择stdev中的每一行
将stdev中的行/列中的标量值与main中的完整列进行比较(这将引发异常)
并将已初始化为列表的变量作为一个变量,用完整的列/列划分覆盖(不管预期的行是什么,并且只保留循环中最后一次的值)
因此,我建议采用以下方式来代替该循环:
或者更进一步,当您构建stdev并将其作为列添加到main上时:
如果您提供数据样本,我们可以测试这是否有效
相关问题 更多 >
编程相关推荐