以下のようにテストデータセットとトレーニングデータセットがあります。最小レコードのサンプルデータを提供しましたが、私のデータには1000を超えるレコードがあります。ここでEは、アルゴリズムを使用して予測する必要があるターゲット変数です。 1、2、3、4のような4つのカテゴリしかありません。これらの値のいずれかのみを取ることができます。
トレーニングデータセット:
A B C D E
1 20 30 1 1
2 22 12 33 2
3 45 65 77 3
12 43 55 65 4
11 25 30 1 1
22 23 19 31 2
31 41 11 70 3
1 48 23 60 4
テストデータセット:
A B C D E
11 21 12 11
1 2 3 4
5 6 7 8
99 87 65 34
11 21 24 12
Eには4つのカテゴリしかないため、多項ロジスティック回帰(1対Restロジック)を使用してこれを予測することを考えました。私はそれをpythonを使用して実装しようとしています。
これらのターゲットを変数に設定し、アルゴリズムを使用してこれらの値を予測するために必要なロジックを知っています。
output = [1,2,3,4]
しかし、python(sklearn)を使用してこれらの値をループする方法と、出力値を予測するためにどのアルゴリズムを使用する必要があるかについて、私は行き詰まっていますか?
LogisticRegression
複数のクラスをそのまま使用できます。
X = df[['A', 'B', 'C', 'D']]
y = df['E']
lr = LogisticRegression()
lr.fit(X, y)
preds = lr.predict(X) # will output array with integer values.
あなたは試すことができます
LogisticRegression(multi_class='multinomial',solver ='newton-cg').fit(X_train,y_train)