I want to translate the column "name" of my df, I have the following line
data1['name']=data1['name'].apply(lambda x: translator.translate(x, dest='en').text)
But I get the error
AttributeError: 'NoneType' object has no attribute 'group'
Example of my df:
number name
0 1 Αλέκος Καραβίτης
1 2 Νίκος Τζουγάνος
2 3 $IMEON
3 4 鄒森
4 5 黃國隆
Prerequisites to install “pip install google-trans-new“ (Please refer here for additional information):
Then change the function from:
data1['name']=data1['name'].apply(lambda x: translator.translate(x, dest='en').text)
To:
data1['name']=data1['name'].apply(lambda x: translator.translate(x,lang_tgt='en'))
Because, “dest” keyword is not supported in the “google-trans-new” library. It’s supported only in the “googletrans” library. So, you should use “lang_tgt” instead of “dest” when using the “google-trans-new” library. Please refer here for additional information.
Try below Script:
# coding: utf-8
import pandas as pd
from google_trans_new import google_translator
translator = google_translator()
data1 = pd.DataFrame([
[1, 'Αλέκος Καραβίτης'],
[2, 'Νίκος Τζουγάνος'],
[3, '$IMEON'],
[4, '鄒森'],
[5, '黃國隆'] ], columns=['number', 'name'])
data1['name']=data1['name'].apply(lambda x: translator.translate(x,lang_tgt ='en')
print(data1)