web-dev-qa-db-fra.com

Python: comment utiliser la régression logistique multinomiale à l'aide de SKlearn

J'ai un jeu de données de test et un jeu de données de train comme ci-dessous. J'ai fourni un échantillon de données avec des enregistrements min, mais mes données ont plus de 1000 enregistrements. Ici E est ma variable cible que je dois prédire à l'aide d'un algorithme. Il n'a que quatre catégories comme 1,2,3,4. Il ne peut prendre que n'importe laquelle de ces valeurs.

Ensemble de données de formation:

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

Ensemble de données de test:

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

Puisque E n'a que 4 catégories, j'ai pensé à prédire cela en utilisant la régression logistique multinomiale (1 vs Logique de repos). J'essaie de l'implémenter en utilisant python.

Je connais la logique dont nous avons besoin pour définir ces cibles dans une variable et utiliser un algorithme pour prédire l'une de ces valeurs:

output = [1,2,3,4]

Mais je suis coincé à un point sur la façon de l'utiliser en utilisant python (sklearn) pour parcourir ces valeurs et quel algorithme dois-je utiliser pour prédire les valeurs de sortie? Toute aide serait grandement appréciée

11

LogisticRegression peut gérer plusieurs classes prédéfinies.

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.
11
dukebody

Tu pourrais essayer

LogisticRegression(multi_class='multinomial',solver ='newton-cg').fit(X_train,y_train)
10
Daisy Qin