gpt4 book ai didi

python - 过滤掉超过一定数量 NaN 的行

转载 作者:太空狗 更新时间:2023-10-30 00:29:51 24 4
gpt4 key购买 nike

在 Pandas 数据框中,我想过滤掉所有超过 2 个 NaN 的行。

基本上,我有 4 列,我只想保留至少有 2 列具有有限值的那些行。

有人可以建议如何实现这一目标吗?

最佳答案

您在这里提出了 2 个略有不同的问题。在一般情况下,他们有不同的答案。

I would like to keep only those rows where at least 2 columns have finite values.

df = df.dropna(thresh=2)

保留具有 2 个或更多非空值的行。


I would like to filter out all the rows that have more than 2 NaNs

df = df.dropna(thresh=df.shape[1]-2)

过滤掉具有 2 个或更多空值的行。

在您的 4 列示例数据框中,这些操作是等效的,因为 df.shape[1] - 2 == 2。但是,您会注意到数据框的差异,这些数据框没有恰好有 4 列。


注意 dropna 也有一个 subset 参数,如果您希望在应用阈值时只包含指定的列。例如:

df = df.dropna(subset=['col1', 'col2', 'col3'], thresh=2)

关于python - 过滤掉超过一定数量 NaN 的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23203638/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com