我试图像这样应用textblob:
df['newtext'] = df['text'].apply(lambda x: TextBlob(x))但这表示“文本”并返回(I,',v,e,e,b,e,e,n,n,u,s,i,n,g,.)而不是textblob对象。知道为什么会这样吗?
发布于 2022-09-25 17:08:21
最终,当您使用apply方法时,您将返回一个TextBlob对象,而不是一个字符串,而Pandas不知道如何处理它(这就是为什么您得到了奇怪的行为)。
要解决您的问题,只需将TextBlob返回的对象与str()围绕起来,它就能工作了。检查下面的示例
import pandas as pd
from textblob import TextBlob
d = {'text': ["I'm learning", "I love coding"], 'num': [2, 4]}
df = pd.DataFrame(data=d)
print(df)
df['newText'] = df['text'].apply(lambda x:str(TextBlob(x)))
print(df)输出将如下所示:

如果您不像这样使用str():
df['newText'] = df['text'].apply(lambda x:(TextBlob(x)))输出将看起来像:

https://stackoverflow.com/questions/73846268
复制相似问题