3

i want to translate column of my dataframe from french to english.

 from googletrans import Translator 
 translator = Translator()         
 df = pd.DataFrame({'French':['ma voiture','Il fait beau aujourdhui']})
 df['English'] = df['French'].apply(translator.translate,src='fr',dest='en').apply(getattr, args=('text',))

I did these lines but i found an error.. How can i solve it please.?

anayisse2
  • 103
  • 1
  • 7

2 Answers2

0

Well I was having an issue with googletrans. But then tried the solution here that suggests to do:

pip install googletrans-temp

And your code seemed to work just fine:

Output:

print (df)
                    French                         English
0               ma voiture                          my car
1  Il fait beau aujourdhui  Such a beautiful weather today
chitown88
  • 27,527
  • 4
  • 30
  • 59
0

Google Translate has limits on volume translated. EasyNMT is a scalable solution.

from easynmt import EasyNMT
model = EasyNMT("opus-mt")

df["English"] = df.apply(lambda row: model.translate(row["French"], target_lang="en"), axis=1)
Saurabh Khanna
  • 531
  • 4
  • 4