📜  如果所有值都是 nan,则删除行 (1)

📅  最后修改于: 2023-12-03 15:38:59.209000             🧑  作者: Mango

删除包含 NaN 的行

在数据处理中,经常会遇到 NaN 值,它代表着缺失数据或不可用数据。在实际处理中,我们很有可能需要删除包含 NaN 值的行或列。本文将介绍在 Python 中,如何使用 Pandas 删除包含 NaN 值的行。

数据准备

首先,我们需要准备一些数据。在这里,我使用相应的 Python 函数创建一个 DataFrame:

import pandas as pd
import numpy as np

df = pd.DataFrame({'A': [1, 2, np.nan, 4, 5],
                   'B': [6, np.nan, np.nan, 9, 10],
                   'C': [11, 12, 13, 14, 15]})
print(df)

输出结果:

     A     B   C
0  1.0   6.0  11
1  2.0   NaN  12
2  NaN   NaN  13
3  4.0   9.0  14
4  5.0  10.0  15

在这个 DataFrame 中,我们可以看到有些值是 NaN,表示缺失值。

删除包含 NaN 的行

如果我们想删除包含 NaN 值的行,可以使用 Pandas 中的 dropna() 函数。

new_df = df.dropna()
print(new_df)

输出结果:

     A     B   C
0  1.0   6.0  11
3  4.0   9.0  14
4  5.0  10.0  15

可以看到,包含 NaN 值的行已经被删除了。

需要注意的是,dropna() 函数默认删除包含任何 NaN 值的行,如果只想删除全部为 NaN 值的行,可以通过增加参数 how='all' 实现:

new_df = df.dropna(how='all')
print(new_df)

输出结果:

     A     B   C
0  1.0   6.0  11
1  2.0   NaN  12
2  NaN   NaN  13
3  4.0   9.0  14
4  5.0  10.0  15
总结

这篇文章介绍了如何删除包含 NaN 值的行,并给出了相应的 Python 代码示例。在实际数据处理的过程中,需要按照实际需求进行相应的处理。如有疑问,请在评论区留言。