sklearnを使用してErrorErrorを報告します:予期された2D配列、代わりに1D配列を取得しました
Use Sklearn Report Errorerror
sklearnでKNNモデルを使用するなど、モデルを予測する場合は、
import numpy as np from sklearn.neighbors import KNeighborsClassifier knn = KNeighborsClassifier() knn.fit(x,y) x_new = [50000,8,1.2] y_pred = knn.predict(x_new)
エラーを報告します
ValueError:2D配列が必要ですが、代わりに1D配列を取得しました:
データに単一の特徴がある場合はarray.reshape(-1、1)を使用して、単一のサンプルが含まれている場合はarray.reshape(1、-1)を使用して、データの形状を変更します。
これは、新しいバージョンのsklearnでは、単一の行または列(前の予測で使用された1つのサンプルデータのみなど)であっても、すべてのデータが2次元行列である必要があるためです。 .reshape(1、-1)次のように変換を実行します。
変更する必要があります
x_new = np.array(x_new).reshape(1, -1) y_pred = knn.predict(x_new)
テストは有効です。