【发布时间】:2019-04-03 09:37:09
【问题描述】:
我有 CSV 文件,其中存储了来自 twitter 的推文。其中一些对他们来说是非英语的,我正在使用 AWS 翻译服务。
我正在将我的 CSV 转换为数据框,然后尝试为已翻译的推文文本创建新列,但对于某些推文,由于对语言检测的信心不足,它显示错误并且代码没有继续前进。
我想跳过这些错误生成文本,并希望继续编写代码以进一步执行。
出现以下错误:
DetectedLanguageLowConfidenceException:发生错误 (DetectedLanguageLowConfidenceException) 调用 TranslateText 操作:翻译请求被拒绝,因为低 自动检测到的源语言“fr”的置信度。指定一个有效的 源语言代码强制翻译。
这是我试图获取输出的代码。 jap.csv 是我的推文存储 CSV。使用此 CSV,我创建了已翻译的 df 名称。 'text' 是存在推文文本的列,translated_text 是我存储翻译文本的新列。
import boto3
import aws_credentials
import pandas as pd
translate = boto3.client('translate',aws_access_key_id= aws_credentials.key_id,aws_secret_access_key= aws_credentials.secret_key,
region_name='us-west-2')
translated = pd.read_csv('jap.csv')
translated['Translated_text'] = translated['text']
translated['Orginal_text_lang']= 'en'
for i, row in translated.iterrows():
result = translate.translate_text(Text= row['text'],
SourceLanguageCode='auto', TargetLanguageCode="en")
T_text= result.get('TranslatedText')
So_lg= result.get('SourceLanguageCode')
translated.at[i,'Translated_text']= T_text
translated.at[i,'Orginal_text_lang']= So_lg
translated.to_csv('translated.csv')
我想跳过所有产生此类错误的文本,代码应该执行到最后并为翻译后的文本生成输出 CSV。
【问题讨论】:
标签: python pandas csv translate