AttributeError:"Series"对象在 SentimentIntensityAnalyzer 中没有属性"编码"



我使用python中的snscraper库抓取tweet。我愿意了解每条推文的情感。为了做到这一点,我使用了SentimentIntensityAnalyzer()从nltk和以下错误弹出。

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

我回到了抓取结果的数据集,它显示了数据集的Text列的类型,如下所示

type(data['Text'])
Out[42]: pandas.core.series.Series

我试图改变数据类型并做其他操作,但结果不是积极的。我应该采取什么方法?

谢谢!

看来您的库返回了一个包含数据的pandas数据框架对象。(参见:https://pandas.pydata.org/)。使用语法dataframe['string'],您将返回一个pandas系列对象,它是dataframe对象(确切地说是列)的子集。

在您的示例中,您将获得数据框架的内容&;data&;。具体来说,就是"text"列的内容。

这个pandas系列对象没有"encode"方法。根据您想要做的事情,您可能必须对该系列对象的每一项进行编码。例如:

for value in data['Text']:
print(value.encode())

通过pandas.apply()函数传递数据['Text'],然后使用SentimentIntensityAnalyzer()来实现。事实上,该函数无法处理系列对象。在本例中,使用循环函数将元素一个接一个地传递给SentimentIntensityAnalyzer()。

相关内容

  • 没有找到相关文章

最新更新