我有一个测试数据集和训练数据集,如下所示。我提供了一个有最小记录的样本数据,但我的数据有1000多条记录。这里E是我的目标变量,我需要使用算法来预测它。它只有四个类别,如1,2,3,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(multi_class='multinomial',solver ='newton-cg').fit(X_train,y_train)
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.