as_matrixエラー
AttributeError: 'DataFrame' object has no attribute 'as_matrix'
エラーは、pandasのバージョンの変更によって、DataFrame
オブジェクトのas_matrix()
メソッドが非推奨となったために発生します。
以前のバージョン
pandasでは、DataFrame
オブジェクトからNumPyの配列に変換するためにas_matrix()
メソッドが使用されていました。しかし、このメソッドは非推奨とされ、代わりにvalues
属性を使用することが推奨されています。
対応
as_matrix()
メソッドを使用する代わりに、values
属性を使用してデータフレームをNumPyの配列に変換することができます。
エラーを修正例
import pandas as pd df = pd.DataFrame([[1, 2, 3], [4, 5, 6], [7, 8, 9]]) array = df.values # 代わりにvalues属性を使用 print(array)
as_matrix()
メソッドがコードで使用されている場合は、values
属性に置き換える必要があります。
例(scikit-learnのboston)
X = df_data[["LSTAT"]].as_matrix()
X = df_data[["LSTAT"]].values