2017-05-25 119 views
1

我的代码是:ValueError异常:无法将字符串转换为浮动熊猫

import pandas as pd 
data = pd.read_table('train.tsv') 

X=data.Phrase 
Y=data.Sentiment 
from sklearn import cross_validation 
X_train,X_test,Y_train,Y_test=cross_validation.train_test_split(X,Y,test_size=0.2,random_state=0) 
from sklearn.naive_bayes import MultinomialNB 
clf = MultinomialNB() 
clf.fit(X,Y) 

我得到的错误:ValueError: could not convert string to float:

我可以做什么样的变化,我的代码工作?

+0

什么是'data.info()'?所有数据都是数字? – jezrael

+0

否 它也由字符串组成。 X.phrase包含字符串数据。 Y.Sentiment有数字数据。 –

回答

1

您不能将文本数据传入到scikit-learn的MultinomialNB中,如documentation中所述。

scikit-learn中的算法都不直接处理文本数据。你需要做一些预处理来获得所需的输出。您需要先使用装袋或标记化等技术从文本数据中提取功能。看看这个link为更好的理解。

您也可以考虑使用NLTK作为您的使用案例。

相关问题