0
我有一個腳本,一年前成功運行,不再運行。我用熊貓的數據處理成這樣:SCIKIT學習多類錯誤
df_train
dtu_docid dtu_topic_split y_train
0 2012-1553 [Energy Taxation, State & Local Taxation] [3, 23]
2 2010-0227 [Quantitative Economics and Statistics] [34]
3 2010-0215 [International Taxation, Asia] [0, 19]
,然後用scikit如下:
classifier = Pipeline([
('vectorizer', CountVectorizer(stop_words='english',
ngram_range=(1,3),
max_df = 1.0,
min_df = 0.0,
analyzer='word')),
('tfidf', TfidfTransformer()),
('clf', OneVsRestClassifier(LinearSVC(verbose=1)))])
classifier.fit(df_train.dtu_content, df_train.y_train)
和現在得到一個錯誤,讓我發瘋了:
ValueError: Expected array-like (array or non-string sequence), got 0 [3, 23]
2 [34]
3 [0, 19]
4 []
5 [3]
8 [8, 27]
9 [10]
11 [15]
12 [0, 7]
13 [1, 4]
14 [1, 4, 13] ... (truncated)
15 [11] ... (truncated)
大約9個月前,它看起來對multiclass.py模塊有了改進,額外的檢查,但我不知道如何解決。任何人以前見過這個或有想法?
今天早上我一直在研究這個問題,並在github上發現了一些關於可能修復的祕密筆記。熊貓或scikit的最新版本似乎破壞了一些非常重要的東西。恕我直言,這是使用熊貓和scikit的關鍵方面 - 他們曾經一起工作的無縫,簡單和自然的方式。當不合格行爲將被糾正時,是否有解決方法或估計? – david
如何構建'df_train'?請發佈[SSCCE](http://sscce.org)。 –
DF列車是在大熊貓中完成大量數據修改而創建的,有問題的屬性是y_train。 Ytrain是與訓練示例相關的類的列表。因爲這是一個多種情況,每個樣本可以低於一個以上的類別,因此使用該列表。 – david