2017-02-13 51 views
0

MultinomiaL Naive Bayを実行しようとしましたが、以下のエラーが発生しました。サンプルのトレーニングデータが示されています。テストデータは全く同じです。ValueError:サンプル数が一致しない入力変数が見つかりました:[1、14048]

def main(): 
    text_train, targets_train = read_data('train') 
    text_test, targets_test = read_data('test') 
    classifier1 = MultinomialNB() 
    classifier1.fit(text_train, targets_train) 
    prediction1 = classifier1.predict(text_test) 

サンプルデータ:たまに

Train: 
category, text 
Family, I love you Mom 
University, I hate this course 
+0

あなたの 'text_train'と' targets_train'の形は何ですか?また、私はMultinomialNBがデフォルトでテキストデータを扱うとは思わない。あなたはそれを前処理する必要があります。 –

答えて

0

私はこの質問に直面し、エラーからの理由のほとんどを見つけるには、入力データが2次元配列は、そのようなあなたは、回帰を構築したい場合などであるべきですモデル。このコードを書いたら、このエラーに直面します!例えば

a = np.array([1,2,3]).T 
b = np.array([4,5,6]).T 

regr = linear_model.LinearRegression() 
regr.fit(a, b) 

、あなたが何かを追加する必要があります!

a = np.array([[1,2,3]]).T 
b = np.array([[4,5,6]]).T 

最後に正常に実行されます。 それは私の経験的なことです! これは単なる参考情報であり、標準的な回答ではありません。 私は英語とPythonを学ぶ学生として中国人です!

+0

a = np.array([[1,2,3]])T b = np.array([4,5,6])。T入力は2次元でなければなりません –

関連する問題