[英]LogisticRegression: Unknown label type: 'continuous' using sklearn in python
[英]sklearn.LogisticRegression ValueError: Unknown label type: 'continuous'
我收到此错误:
ValueError: Unknown label type: 'continuous'
这是我的代码:
data=data.dropna()
array = data.values
X = array[:,0:]
y = array[:,-1]
X_train, X_validation, y_train, y_validation = train_test_split(X, Y, test_size=0.20, random_state=1)
models = []
models.append(('LR', LogisticRegression(solver='liblinear', multi_class='ovr')))
models.append(('LDA', LinearDiscriminantAnalysis()))
models.append(('KNN', KNeighborsClassifier()))
# Evaluate each model in turn
results = []
names = []
for name, model in models:
# TimeSeries Cross validation
tscv = TimeSeriesSplit(n_splits=10)
cv_results = cross_val_score(model, X_train, y_train, cv=tscv, scoring='r2')
results.append(cv_results)
names.append(name)
print('%s: %f (%f)' % (name, cv_results.mean(), cv_results.std()))
# Compare Algorithms
plt.boxplot(results, labels=names)
plt.title('Algorithm Comparison')
plt.show()
我发现另一个有类似问题的帖子,但是当我尝试解决问题时:
from sklearn import utils
lab_enc = preprocessing.LabelEncoder()
encoded = lab_enc.fit_transform(y_train)
LogisticRegression 和 KNeighborsClassifier 有效,但 LinearDiscriminantAnalysis 返回 nas 和错误:
ValueError: The number of samples must be more than the number of classes.
那时我并不真正了解我在做什么,并且文档对我没有多大帮助。
有人可以向我解释这些错误吗?
您在连续 output 上使用了分类模型。
对于您使用的模型,output 必须是 0/1(二进制)和 0/1/2/3(对于多类)的形式。
您可以对时间序列数据使用线性/多项式/岭/套索回归。
您还使用了 X = array[:,0:]。 这也将包括 output 列以及功能(即 X)。
请改用 X = array[:,0:-1]。 当您采用特征时,这将排除最后一列。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.