Pandas 中的 NaN
在本文中,我们将介绍在 Pandas 中使用数据帧时遇到的 NaN。
阅读更多:Pandas 教程
什么是 NaN?
NaN 代表 Not a Number,通常表示缺失或无效的数据。在 Pandas 中,NaN 用于表示缺失的或无效的值。
在 Pandas 中如何处理 NaN?
在 Pandas 中,有多种方式来处理 NaN。下面我们将介绍几种最常用的方法。
判断是否存在 NaN
使用 isnull()
函数可以判断一个值是否为 NaN。
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan],
'B': [4, np.nan, np.nan],
'C': [7, 8, 9]})
print(df.isnull())
输出:
A B C
0 False False False
1 False True False
2 True True False
上面的代码中,我们创建了一个数据帧 df
,并对它应用了 isnull()
函数。输出结果显示,数据帧中的每个值都被转换为了布尔值(True 或 False),表示其是否为 NaN。
删除包含 NaN 的行或列
使用 dropna()
函数可以删除包含 NaN 的行或列。
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': [1, 2, np.nan],
'B': [4, np.nan, np.nan],
'C': [7, 8, 9]})
df.dropna(axis=0, inplace=True) # 删除行,axis=1 删除列
print(df)
输出:
A B C
0 1.0 4.0 7
上面的代码中,我们创建了一个数据帧 df
,并对它应用了 dropna()
函数,删除了数据帧中包含 NaN 值的行。
替换 NaN
使用 fillna()
函数可以用指定的值替换数据帧中的 NaN。
import pandas as pd
import numpy as np
df = pd.DataFrame({'A': [1, 2, np.nan],
'B': [4, np.nan, np.nan],
'C': [7, 8, 9]})
df.fillna(value=0, inplace=True)
print(df)
输出:
A B C
0 1.0 4.0 7
1 2.0 0.0 8
2 0.0 0.0 9
上面的代码中,我们创建了一个数据帧 df
,并对它应用了 fillna()
函数,将数据帧中的 NaN 值替换为 0。
小结
在本文中,我们介绍了 Pandas 中的 NaN。我们学习了如何判断是否存在 NaN、如何删除包含 NaN 的行或列以及如何替换 NaN。这些技巧将为使用 Pandas 处理数据帧提供帮助。