相关疑难解决方法(0)

Pandas DataFrame 中大于阈值的连续 NaN

我想在 Pandas DataFrame 中找到连续 NaN 的那些索引,其中超过 3 个连续 NaN 返回它们的大小。那是:

58234         NaN
58235         NaN
58236    0.424323
58237    0.424323
58238         NaN
58239         NaN
58240         NaN
58241         NaN
58242         NaN
58245         NaN
58246    1.483380
58247    1.483380
Run Code Online (Sandbox Code Playgroud)

应该返回类似 (58238, 6) 的内容。返回的实际格式并不重要。我发现了以下内容。

df.a.isnull().astype(int).groupby(df.a.notnull().astype(int).cumsum()).sum()
Run Code Online (Sandbox Code Playgroud)

但它没有为每个索引返回正确的值。这个问题可能与用熊猫识别连续的 NaN非常相似, 但任何帮助都将不胜感激,因为我是熊猫的菜鸟。

python dataframe pandas

5
推荐指数
1
解决办法
1933
查看次数

从 pandas DataFrame 中删除少于 K 个连续 NaN

我正在处理时间序列数据。我在从数据帧列中删除小于或等于阈值的连续 NaN 时遇到问题。我尝试查看一些链接,例如:

使用 pandas 识别连续 NaN:识别连续 NaN 出现的位置以及计数。

Pandas:NaN 洞的游程长度:输出 NaN 的游程长度编码

这条路上还有很多其他人,但没有一个人真正告诉我们在识别后如何删除它们。

我找到了一个类似的解决方案,但它是在 R 中: 如何删除列中超过 2 个连续的 NA?

我想要Python的解决方案。

所以这是一个例子:

这是我的数据框列:

            a
    0   36.45
    1   35.45
    2     NaN
    3     NaN
    4     NaN
    5   37.21
    6   35.63
    7   36.45
    8   34.65
    9   31.45
    10    NaN
    11    NaN
    12  36.71
    13  35.55
    14    NaN
    15    NaN
    16    NaN
    17    NaN
    18  37.71
Run Code Online (Sandbox Code Playgroud)

如果 k = 3,我的输出应该是:

            a
    0   36.45
    1   35.45
    2   37.21
    3   35.63
    4   36.45 …
Run Code Online (Sandbox Code Playgroud)

python nan pandas

5
推荐指数
1
解决办法
1388
查看次数

在 python 中查找 nan 的连续计数?

我有一个缺少值的数据框。我想找到连续缺失值的数量及其计数。以下是我期望的示例数据和示例结果

Sample data

Timestamp            X
2018-01-02 00:00:00  6
2018-01-02 00:05:00  6
2018-01-02 00:10:00  4
2018-01-02 00:15:00  nan
2018-01-02 00:20:00  nan
2018-01-02 00:25:00  3
2018-01-02 00:30:00  4
2018-01-02 00:35:00  nan
2018-01-02 00:40:00  nan
2018-01-02 00:45:00  nan
2018-01-02 00:50:00  nan
2018-01-02 00:55:00  nan
2018-01-02 01:00:00  nan
2018-01-02 01:05:00  2
2018-01-02 01:10:00  4
2018-01-02 01:15:00  6
2018-01-02 01:20:00  6
2018-01-02 01:25:00  nan
2018-01-02 01:30:00  nan
2018-01-02 01:35:00  6
2018-01-02 01:40:00  nan
2018-01-02 01:45:00  nan
2018-01-02 01:50:00  6
2018-01-02 01:55:00  6
2018-01-02 02:00:00  nan …
Run Code Online (Sandbox Code Playgroud)

python pandas

1
推荐指数
1
解决办法
1829
查看次数

标签 统计

pandas ×3

python ×3

dataframe ×1

nan ×1