Как перевести столбец pandas - PullRequest
1 голос
/ 08 мая 2020

Я работаю над арабским c проектом анализа настроений. В моем подходе к обучению без учителя я пытаюсь перевести лексику на арабский c с помощью библиотеки googletrans. столбец lexicon ['word'] содержит все английские sh слова. Я пробовал следующие методы:

-lexicon['ngram'] = lexicon['word'].apply(translator.translate, src='en', dest='ar')
-lexicon["ngram"] = lexicon["word"].map(lambda x: translator.translate(x, src="en", dest="ar").text)
-lexicon["ngram"] = translator.translate(lexicon["word"], src="en", dest="ar").text

все они продолжают давать мне одну и ту же ошибку:

**JSONDecodeError: Expecting value: line 1 column 1 (char 0)**

Я не понимаю, почему я получаю это ошибка, хотя я скопировал ее точно так же, как нашел в stackoverflow. В моем словарном запасе почти 7000 слов, и я читал, что для перевода может потребоваться до 15 тысяч слов одновременно. может кто поможет? Заранее спасибо!

1 Ответ

0 голосов
/ 08 мая 2020

Попробуйте выполнить строку ниже

lexicon['ngram'] = lexicon['word'].apply(lambda x: translator.translate(x, dest='ar').text)

Я смоделировал приведенный ниже код, и он переводит слова

import pandas as pd
from googletrans import Translator
translator = Translator(service_urls=[
      'translate.google.com',
      'translate.google.co.kr',
    ])
words = ['quick', 'brown', 'fox']
lexicon = pd.DataFrame(words, columns=['word'])
lexicon['ngram'] = lexicon['word'].apply(lambda x: translator.translate(x, dest='ar').text)
lexicon

Вывод -

  word  ngram
0  quick  بسرعة
1  brown    بنى
2    fox   ثعلب
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...