熊猫中的lambda函数中的lambda函数

时间:2019-01-24 21:52:41

标签: python pandas

我正在尝试以下功能。

我想通过其所使用的语言来翻译“文本”中的数据,可以通过以下方式确定

df['Language'] = df.Text.apply(lambda x: TextBlob(str(x)).detect_language())

翻译成西班牙语,可以通过以下方式完成:

.translate(from_lang='en', to= 'es')

我已经尝试了下面的方法,但是我不确定如何将两个函数嵌套在一个语句中?

df['Translated'] = df.Text.apply(lambda x: TextBlob(str(x)).translate(from_lang= df.Text.apply(lambda x: TextBlob(str(x))), to ='en'))

输入数据框只是带有文本语句的单列,例如:

Text
"I love this game, I think its great"
"really buggy, not a good experience, do not buy"
"not too bad, not too good"

有人可以帮忙吗?

1 个答案:

答案 0 :(得分:1)

您可以使用DataFrame.apply而不是使用Series.apply:

df['Translated'] = df.apply(lambda x: TextBlob(str(x.Text)).translate(from_lang=x.Language, to='en'), axis=1)