AttributeError: 'numpy.ndarray' object has no attribute 'fillna'. Did you mean: 'fill'?上述代码报错
时间: 2023-06-23 08:55:30 浏览: 290
attributed:使用属性来控制将复杂类型记录到Serilog的方式
对于NumPy的数组对象,是没有`fillna()`方法的,因此会报上述错误。如果要将数组中的NaN值替换为其他值,可以使用NumPy的`nan_to_num()`函数。这个函数可以将NaN值替换为指定的值,可以选择替换为0、平均值、中位数等。下面是一个示例代码:
```python
import numpy as np
# 创建包含NaN值的NumPy数组
arr = np.array([1, 2, np.nan, 4, 5])
# 将NaN值替换为平均值
mean_value = np.nanmean(arr)
arr = np.nan_to_num(arr, nan=mean_value)
# 输出结果
print(arr)
```
其中,`nanmean()`函数计算了数组中的平均值,然后使用`nan_to_num()`函数将NaN值替换为平均值。`nan`参数指定要替换的值。这里使用了`numpy`中的`nan_to_num()`函数,实现了将数组中的NaN值替换为平均值的操作。
阅读全文