python 替换 nan
时间: 2023-10-14 12:24:56 浏览: 51
在Python中,可以使用numpy库中的函数`numpy.nan_to_num`来替换nan值。这个函数用于将数组中的nan值替换为0或任何其他的值。
下面是一个例子:
```python
import numpy as np
# 创建一个包含nan值的数组
arr = np.array([1, 2, np.nan, 4])
# 将nan值替换为0
arr = np.nan_to_num(arr, nan=0)
print(arr)
```
输出:
```
[1. 2. 0. 4.]
```
在上面的例子中,我们使用`numpy.nan_to_num`函数将数组`arr`中的nan值替换为0。如果想要将nan值替换为其他的值,只需要将`nan`参数设置为所需的值即可。
相关问题
python将nan替换为0
可以使用numpy库中的nan_to_num函数来将nan替换为0,示例如下:
```python
import numpy as np
arr = np.array([1, 2, np.nan, 4])
arr = np.nan_to_num(arr, nan=0)
print(arr)
```
输出结果为:
```
[1. 2. 0. 4.]
```
其中,nan_to_num函数的第一个参数是需要替换的数组,第二个参数nan指定要替换的值,这里是nan,第三个参数指定替换后的值,这里是0。
python 去除nan
你可以使用 numpy 库中的 isnan 函数来判断一个数是否为 NaN,然后使用 numpy 中的 replace 函数将其替换为其他值或者去除。例如:
```python
import numpy as np
a = np.array([1, 2, np.nan, 4, np.nan])
a = np.where(np.isnan(a), 0, a) # 将 NaN 替换为 0
print(a) # [1. 2. 0. 4. 0.]
```
如果你想删除数组中的 NaN,可以使用 numpy 中的 isnan 函数和 logical_not 函数来实现。例如:
```python
import numpy as np
a = np.array([1, 2, np.nan, 4, np.nan])
a = a[~np.isnan(a)] # 删除 NaN
print(a) # [1. 2. 4.]
```