使用TextBlob翻译pandas列

时间:2015-11-13 11:21:24

标签: python pandas textblob

我正在尝试阅读csv并使用Python中的TextBlob包(2.7.10 Mac OS X Yosemite)将一个用法语写成的列翻译成英语。

但是,Python会向我抛出以下错误消息:

AttributeError: 'Series' object has no attribute 'translate'

我的Python代码:

import pandas as pd
import numpy as np
from textblob import TextBlob

df = pd.read_csv('france_content.csv')
df2 = df[['HEADLINE', 'AUTHOR', 'CONTENT']]

TextBlob = df2['CONTENT'].str.strip()
TextBlob.translate(to="es")

第二个想法,我实际上认为我在这里不需要numpy。但是,如何让pandas阅读内容字段并让textblob将其翻译成英文。最好将其放在名为'英语'

的列中

编辑: 改为:

import pandas as pd
import numpy as np
from textblob import TextBlob

df = pd.read_csv('france_content.csv')

df['English'] = df['CONTENT'].str.encode('ascii', 'ignore').apply(lambda x:    TextBlob(x.strip()).translate(to='en'))

数据非常基础,第1栏作者姓名和第2栏(' CONTENT')法文文本。

我仍然有以下错误:

UnicodeDecodeError: 'ascii' codec can't decode byte 0xc3 in position 9: ordinal not in range(128)

1 个答案:

答案 0 :(得分:0)

import pandas as pd
from textblob import TextBlob
df = pd.read_csv('d:\lan.csv') # path to csv file

在数据框中添加带有转换后的单词的英文列

df['english'] = df['structure'].str.encode('ascii', 'ignore').apply(lambda x:TextBlob(x.strip()).translate(to='en'))
df.to_csv("cool.csv")# your documents folder

这可以按要求运作。

感谢