Pandas cumsum导致NaN甚至在系列中没有丢失值

时间:2016-01-22 23:27:11

标签: python numpy pandas time-series

我有简单的返回时间序列,不包含任何NaN。但是,当我使用pandas.series.cumsum()时,它会返回NaN的大部分系列。我不确定会导致这种行为的原因。请指教!

log_returns = np.log(prices / prices.shift(1)).dropna()

enter code here

log_returns.cumsum()

enter image description here

1 个答案:

答案 0 :(得分:1)

更新:这是一个简单的数据问题。其中一个价格系列有一天价格等于零。计算零值的日志返回会产生inf/-inf,在计算滚动值时会产生NaN's

我必须详细了解数据集,看看问题是什么,并在系列中发现了一对-inf

enter image description here

我修改了我的代码以包含该行:

cross_section = cross_section[np.isfinite(cross_section)]

并且摆脱了数据集中的-inf和意外NaN

如果有人知道会导致这种情况,请发出声音。谢谢!