python的nan如何处理
时间: 2023-09-27 07:10:23 浏览: 68
在Python中,NaN表示“不是一个数字”,通常用来表示无效或未定义的浮点数。以下是处理NaN的几种方法:
1. 检查NaN值
可以使用math.isnan()函数来检查一个变量是否为NaN。例如:
import math
x = float('nan')
if math.isnan(x):
print("x is NaN")
2. 替换NaN值
可以使用numpy库中的函数numpy.nan_to_num()来将NaN值替换为0或其他值。例如:
import numpy as np
x = np.array([1, 2, np.nan, 4])
y = np.nan_to_num(x)
print(y) # 输出 [1. 2. 0. 4.]
3. 删除NaN值
可以使用pandas库中的函数dropna()来删除包含NaN值的行或列。例如:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, 6]})
df.dropna(axis=0, inplace=True) # 删除包含NaN值的行
print(df) # 输出: A B
# 0 1.0 4.0
4. 填充NaN值
可以使用pandas库中的函数fillna()来填充NaN值。例如:
import pandas as pd
df = pd.DataFrame({'A': [1, 2, np.nan], 'B': [4, np.nan, 6]})
df.fillna(value=0, inplace=True) # 将NaN值填充为0
print(df) # 输出: A B
# 0 1.0 4.0
# 1 2.0 0.0
# 2 0.0 6.0
阅读全文