Я пытаюсь провести анализ настроений НЛП для конкретного данного предложения ... Я обучил модель, используя набор данных для повторного анализа, и она работает правильно, когда я даю данные "xtest" для предсказания, но я получаю эту ошибку, когда я давая свое собственное предложение, чтобы предсказать, будет ли оно положительным или отрицательным, поскольку я новичок ie, поэтому, пожалуйста, помогите и объясните, что я делаю неправильно
Traceback (most recent call last):
File "F:/NLP/sentiment_analysis.py", line 35, in <module>
pred = model.predict(x)
File "C:\Users\RKS\Anaconda3\envs\ADVANCE\lib\site-packages\sklearn\ensemble\_forest.py", line 612, in predict
proba = self.predict_proba(X)
File "C:\Users\RKS\Anaconda3\envs\ADVANCE\lib\site-packages\sklearn\ensemble\_forest.py", line 656, in predict_proba
X = self._validate_X_predict(X)
File "C:\Users\RKS\Anaconda3\envs\ADVANCE\lib\site-packages\sklearn\ensemble\_forest.py", line 412, in _validate_X_predict
return self.estimators_[0]._validate_X_predict(X, check_input=True)
File "C:\Users\RKS\Anaconda3\envs\ADVANCE\lib\site-packages\sklearn\tree\_classes.py", line 380, in _validate_X_predict
X = check_array(X, dtype=DTYPE, accept_sparse="csr")
File "C:\Users\RKS\Anaconda3\envs\ADVANCE\lib\site-packages\sklearn\utils\validation.py", line 531, in check_array
array = np.asarray(array, order=order, dtype=dtype)
File "C:\Users\RKS\Anaconda3\envs\ADVANCE\lib\site-packages\numpy\core\_asarray.py", line 85, in asarray
return array(a, dtype, copy=False, order=order)
ValueError: could not convert string to float: 'this is bad food'
и это мой код:
df = pd.read_csv("Restaurant_Reviews.tsv",delimiter="\t")
corpus = []
for i in range(0,1000):
review = re.sub("[^a-zA-Z]"," ",df["Review"][i])
review = review.lower()
review = review.split()
ps = PorterStemmer()
reviews = [ps.stem(word) for word in review
if not word in set(stopwords.words("english"))]
review = (" ").join(review)
corpus.append(review)
cv = CountVectorizer(max_features=1500)
X=cv.fit_transform(corpus).toarray()
Y = df.iloc [: ,1].values
x = ["this place is awesome"]
xtrain ,xtest ,ytrain , ytest = train_test_split(X,Y,test_size=0.2)
model = RandomForestClassifier(n_estimators = 501 , criterion = 'entropy')
model.fit(xtrain,ytrain)
pred = model.predict(x)
print(pred)