我有两个这样创建的列:
df_o['a'] = (df['sell'] == 1).resample(interval).sum().astype(int)
df_o['b'] = (df['sell'] == 0).resample(interval).sum().astype(int)
我希望计算这两列之间的比率,即:
df_o['ratioab'] = df_o['a'] / df_o['b']
这可行,但是我找不到避免对熊猫等于Inf的x/0
或0/x
的方法。在这种情况下,我希望设置df_o['ratioab'] = 0
这不起作用:
if (0 == df_o['a']).all() | (0 == df_o['b']).all():
df_ohlc['ratioab'] = 0
答案 0 :(得分:1)
一种可能的解决方案是:
df_o['ratioab'] = (df_o['a'] / df_o['b']).replace(np.inf, 0)
答案 1 :(得分:0)
您也可以使用类似这样的内容:
df_o[df_o['ratioab'] == np.inf] = 0