Перевод в TextBlob не работает, язык всегда неизвестен
У меня есть сценарий ниже, который работает над некоторыми комментариями. Все работает хорошо, но я также хотел бы перевести с любого языка на английский.
Однако, используя приведенный ниже, ответ всегда будет "Язык неизвестен". У кого-нибудь есть идеи, почему это может быть?
import pandas as pd
from textblob import TextBlob
import numpy as np
import os
path = 'Desktop/fanbase.csv'
df = pd.read_csv(path, delimiter=',', header='infer', encoding = "ISO-8859-1")
df2 = df[['response']]
df2['subjectivity'] = df2.response.apply(lambda x: TextBlob(str(x)).sentiment.subjectivity)
df2['polarity'] = df2.response.apply(lambda x: TextBlob(str(x)).sentiment.polarity)
df2['neutral'] = np.where(((df2['polarity']>-0.3) & (df2['polarity']<0.3)),'YES','NO')
df2['positive'] = np.where(((df2['polarity']>0.3) & (df2['polarity']<1.1)),'YES','NO')
df2['negative'] = np.where(((df2['polarity']>-1.1) & (df2['polarity']<-0.3)),'YES','NO')
df2['response_length'] = df2['response'].str.len()
df3 = df2.loc[df2['response_length'] > 10]
try:
df3['Language'] = df3.response.apply(lambda x: TextBlob(str(x)).detect_language())
try:
df3['Translated'] = df3.apply(lambda x: TextBlob(str(x.response)).translate(from_lang=x.Language, to='en'), axis=1)
except:
df3['Translated'] = df3['response']
except:
df3['Language'] = 'Language Unknown'
file_path = 'Desktop/sentiment'
if not os.path.exists(file_path):
os.makedirs(file_path)
outpath = "Desktop/sentiment/out.csv"