我正在尝试将这些新单词及其对应的极性分数从csv文件添加到Vader Sentiment词典中
它在更新后还反映在vadersentiment对象中:
但是,一旦我尝试获得新添加单词的极性分数,就会抛出错误:
即使这个词出现在vader词典中,我也对所发生的事情感到困惑:
有人知道为什么会这样吗?
一种解决方法是使用 pandas
读取 CSV 并利用 to_dict()
将数据帧直接转换为字典。
我已将问题中提供的样本数据放入 vader.csv
CSV:
这是使用 pandas
从 CSV 读取并使用 to_dict
转换为字典后字典的样子。
字典:
解决方案代码:
import pandas as pd
data = pd.read_csv('vader.csv',header=None,index_col=0,squeeze=True,skiprows=1).to_dict()
sa_obj = SentimentIntensityAnalyzer()
sa_obj.lexicon.update(data)
print(sa_obj.lexicon['buffering'])
输出:
注意事项:
skiprows=1
用于在将数据帧转换为字典时跳过标题