2017-09-26 8 views
0

Je reçois ValueError: trop de valeurs pour décompresser l'erreur. voici l'exemple de codeErreur lors de la formation NaiveBayesClassifier avec le jeu de données csv

import numpy as np 
import pandas as pd 
from textblob.classifiers import NaiveBayesClassifier 

sms_raw = pd.read_csv('text.csv') 
# training dataset 70% 
# test dataset 30 % 
sms_raw['split'] = np.random.randn(sms_raw.shape[0], 1) 
fltr = np.random.rand(len(sms_raw)) <= 0.7 
train = sms_raw[fltr] 
test = sms_raw[~fltr] 
cl = NaiveBayesClassifier(sms_raw) 
+0

une sorte d'explication sur la nature des données text.csv ou un échantillon est – sgDysregulation

+0

fichier csv a deux colonnes l'un contient un message texte et l'autre contient la catégorie –

Répondre

0

Le NaiveBayesClassifier ne fonctionnera pas avec une trame de données pandas en tant qu'entrée. En outre, dans votre dernière ligne que vous prenez les données de sms_raw comme entrée, je devine que vous vouliez dire:

cl = NaiveBayesClassifier(train) 

Vous aurez besoin de lire dans le fichier csv directement ou convertir les Pandas dataframes à une liste.

Essayez d'utiliser

train.to_dict(orient='records') 
cl = NaiveBayesClassifier(train) 

Si vous voulez lire dans le csv regarder directement cet exemple: https://github.com/sloria/TextBlob/issues/142