Identifying consecutive NaNs with Pandas(识别具有 pandas 的连续NAN)
问题描述
我正在读入一堆CSV文件(一段时间内水位的测量数据),以便对它们进行各种分析和可视化。
由于各种我无法控制的原因,这些时间序列经常有缺失数据,所以我做了两件事:
我用
合计如果缺少的数据多于某个阈值,则丢弃数据集:
如果NaN的数量足够少,我想用
来填补空白现在是问题:这是月度数据,所以如果我有两个以上的连续NAN,我也想丢弃这些数据,因为这意味着我要猜测整个赛季,甚至更长时间。
documentation for fillna
实际上并没有提到当连续的NaN比我指定的limit=2
多时会发生什么,但是当我查看...fillna...
之前和之后的RainD.describe()
并将其与基本CSV进行比较时,很明显它填充了前两个NaN,然后保留其余的,而不是出错。
所以,长话短说:
如何使用Pandas标识多个连续的NAN,而不会出现一些复杂且耗时的非Pandas循环?
推荐答案
可以使用多个布尔条件来测试当前值和上一个值是否为NaN
:
如果要查找连续NaNs
出现的位置,您可以执行以下操作:
这篇关于识别具有 pandas 的连续NAN的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!