修正方法: 「numpy.ndarray」オブジェクトには「append」属性がありません
NumPy の使用時に発生する可能性のあるエラーは次のとおりです。
AttributeError: 'numpy.ndarray' object has no attribute 'append'
このエラーは、標準の Python append()関数を使用して NumPy 配列の末尾に 1 つ以上の値を追加しようとすると発生します。
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 という名前のモジュールがありません
修正方法: 列が重なっていますが、サフィックスが指定されていません