修正方法: 「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 という名前のモジュールがありません
修正方法: 列が重なっていますが、サフィックスが指定されていません

コメントを追加する

メールアドレスが公開されることはありません。 が付いている欄は必須項目です