如何修复:“numpy.ndarray”对象没有“append”属性


使用 NumPy 时可能遇到的错误是:

 AttributeError: 'numpy.ndarray' object has no attribute 'append'

当您尝试使用标准 Python append()函数将一个或多个值附加到 NumPy 数组的末尾时,会发生此错误。

由于 NumPy 没有追加属性,因此会引发错误。要解决此问题,您应该使用np.append()代替。

以下示例展示了如何在实践中纠正此错误。

如何重现错误

假设我们尝试使用标准 Python append()函数将新值添加到 NumPy 数组的末尾:

 import numpy as np

#define NumPy array
x = np. array ([1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23])

#attempt to add the value '25' to end of NumPy array
x. append (25)

AttributeError: 'numpy.ndarray' object has no attribute 'append'

我们收到错误,因为 NumPy 没有附加属性。

如何修复错误

要修复此错误,我们只需使用np.append()即可:

 import numpy as np

#define NumPy array
x = np. array ([1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23])

#append the value '25' to end of NumPy array
x = np. append (x, 25)

#view updated array
x

array([ 1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23, 25])

使用np.append()我们成功地将值“25”添加到数组的末尾。

请注意,如果要将一个 NumPy 数组添加到另一个 NumPy 数组的末尾,最好使用np.concatenate()函数:

 import numpy as np

#define two NumPy arrays
a = np. array ([1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23])
b = np. array ([25, 26, 26, 29])

#concatenate two arrays together
c = np. concatenate ((a, b))

#view resulting array
vs

array([ 1, 4, 4, 6, 7, 12, 13, 16, 19, 22, 23, 25, 26, 26, 29])

有关数组和串联函数的详细说明,请参阅在线文档:

其他资源

以下教程解释了如何修复 Python 中的其他常见错误:

如何修复:没有名为 pandas 的模块
如何修复:没有名为 numpy 的模块
如何修复:列重叠但未指定后缀

添加评论

您的电子邮箱地址不会被公开。 必填项已用*标注