我嘗試運行以下代碼。順便說一句,我是Python和sklearn的新手。ValueError:未知的標籤類型:'unknown'
import pandas as pd
import numpy as np
from sklearn.linear_model import LogisticRegression
# data import and preparation
trainData = pd.read_csv('train.csv')
train = trainData.values
testData = pd.read_csv('test.csv')
test = testData.values
X = np.c_[train[:, 0], train[:, 2], train[:, 6:7], train[:, 9]]
X = np.nan_to_num(X)
y = train[:, 1]
Xtest = np.c_[test[:, 0:1], test[:, 5:6], test[:, 8]]
Xtest = np.nan_to_num(Xtest)
# model
lr = LogisticRegression()
lr.fit(X, y)
,其中y是0的一個np.ndarray和1的
我收到以下:
File "C:\Anaconda3\lib\site-packages\sklearn\linear_model\logistic.py", line >1174, in fit check_classification_targets(y)
File "C:\Anaconda3\lib\site-packages\sklearn\utils\multiclass.py", line 172, >in check_classification_targets raise ValueError("Unknown label type: %r" % y_type)
ValueError: Unknown label type: 'unknown'
Y:陣列狀,形狀(n_samples) 目標值(分類中的分類標籤,迴歸中的實數)
我的錯誤是什麼?
UPD:
y爲陣列([0.0,1.0,1.0,...,0.0,1.0,0.0],D型細胞=對象)大小是(891,)
請提供一瞥數據和進口。你爲什麼使用numpy,你也可以通過名稱來選擇數據框的列。順便說一句,爲什麼測試文件與火車文件有不同的結構。這很奇怪。 – Quickbeam2k1
如果'scikit-learn'無法知道你想解決什麼類型的問題(查看'y'數據,它將返回二進制,多類,連續等),則會出現此錯誤。具體而言,什麼類型的數據是在你的'y'?在這裏發佈,或者@ Quickbeam2k1表示,如果發佈完整數據的樣本,它會更有幫助。 –