ValueError: dimension mismatch While Predicting New Values Sentiment Analysis
ValueError: dimension mismatch While Predicting New Values Sentiment Analysis
我对机器学习学科比较陌生。我正在尝试进行情绪分析预测。
类型列包括推文的情绪(pos、neg 或 neutral 为 0,1 和 2)。推文列包括推文。
我正在尝试将一组新的推文情绪预测为 0,1 和 2。
当我编写此处给出的代码时,出现尺寸不匹配错误。
import pandas as pd
train_tweets = pd.read_csv("tweets_type.csv")
from sklearn.model_selection import train_test_split
y = train_tweets.Type
X= train_tweets.Tweet
train_X, test_X, train_y, test_y = train_test_split(X, y, random_state=1)
from sklearn.feature_extraction.text import CountVectorizer
vect = CountVectorizer()
vect.fit(train_X)
train_X_dtm = vect.transform(train_X)
test_X_dtm = vect.transform(test_X)
test_X_dtm
from sklearn.naive_bayes import MultinomialNB
nb = MultinomialNB()
%time nb.fit(train_X_dtm, train_y)
# make class predictions for X_test_dtm
y_pred_class = nb.predict(test_X_dtm)
# calculate accuracy of class predictions
from sklearn import metrics
from sklearn.metrics import classification_report, confusion_matrix
metrics.accuracy_score(test_y, y_pred_class)
march_tweets = pd.read_csv("march_data.csv")
X=march_tweets.Tweet
vect.fit(X)
train_new_dtm = vect.transform(X)
new_pred_class = nb.predict(train_new_dtm)
我得到的错误在这里:
如果你能帮助我,我会很高兴。
看来我在已经装好 X 之后装错了 train_X。我发现一旦你的模型被安装好,重复这样做是没有用的。所以我所做的就是删除了这一行并且它完美地工作了。
vect.fit(X)
我对机器学习学科比较陌生。我正在尝试进行情绪分析预测。
类型列包括推文的情绪(pos、neg 或 neutral 为 0,1 和 2)。推文列包括推文。
我正在尝试将一组新的推文情绪预测为 0,1 和 2。
当我编写此处给出的代码时,出现尺寸不匹配错误。
import pandas as pd
train_tweets = pd.read_csv("tweets_type.csv")
from sklearn.model_selection import train_test_split
y = train_tweets.Type
X= train_tweets.Tweet
train_X, test_X, train_y, test_y = train_test_split(X, y, random_state=1)
from sklearn.feature_extraction.text import CountVectorizer
vect = CountVectorizer()
vect.fit(train_X)
train_X_dtm = vect.transform(train_X)
test_X_dtm = vect.transform(test_X)
test_X_dtm
from sklearn.naive_bayes import MultinomialNB
nb = MultinomialNB()
%time nb.fit(train_X_dtm, train_y)
# make class predictions for X_test_dtm
y_pred_class = nb.predict(test_X_dtm)
# calculate accuracy of class predictions
from sklearn import metrics
from sklearn.metrics import classification_report, confusion_matrix
metrics.accuracy_score(test_y, y_pred_class)
march_tweets = pd.read_csv("march_data.csv")
X=march_tweets.Tweet
vect.fit(X)
train_new_dtm = vect.transform(X)
new_pred_class = nb.predict(train_new_dtm)
我得到的错误在这里:
如果你能帮助我,我会很高兴。
看来我在已经装好 X 之后装错了 train_X。我发现一旦你的模型被安装好,重复这样做是没有用的。所以我所做的就是删除了这一行并且它完美地工作了。
vect.fit(X)