📅  最后修改于: 2023-12-03 15:34:25.551000             🧑  作者: Mango
在数据处理中,常常会遇到缺失值NaN或无限大数值的情况,这时候我们需要对这些数值进行转换或填充。numpy中的nan_to_num
函数可以把NaN或无限大数值转换成指定的数值。
numpy.nan_to_num(x, copy=True, nan=0.0, posinf=None, neginf=None)
参数说明
nan
参数指定的值。默认为0.0。import numpy as np
# 定义含有缺失值的数组
a = np.array([[1, np.nan], [np.inf, -np.inf]])
# 将NaN和无限大数值转换为0
b = np.nan_to_num(a)
print(b)
输出:
array([[ 1., 0.],
[ 0., 0.]])
这里,函数将所有NaN和正负无穷大数值分别转换为0。
# 将NaN转换为-1,正无穷大转换为1,负无穷大转换为-1
c = np.nan_to_num(a, nan=-1, posinf=1, neginf=-1)
print(c)
输出:
array([[ 1., -1.],
[ 1., -1.]])
在这个例子中,函数将NaN转换为-1,将正无穷大转换为1,负无穷大转换为-1。
总之,numpy.nan_to_num
函数是一个简单实用的数值转换函数,可以帮助处理一定程度上复杂的数据处理问题。