如何使用键作为列和值在循环中形成行从字典更新现有数据框

时间:2019-12-27 16:52:02

标签: python dataframe dictionary

from nltk.sentiment.vader import SentimentIntensityAnalyzer    
sid = SentimentIntensityAnalyzer()
for i in range(len(X)):
    ss = sid.polarity_scores(X.loc[i,'essay'])
    X.from_dict(ss)

这里X是一个现有的数据框,我想添加4个新列,其名称是字典的键,并且值将形成行。

使用上述代码,我得到了错误:

ValueError:如果使用所有标量值,则必须传递索引

但是我不知道如何传递索引

sample of dataframe 字典范例:{'neg':0.013,'neu':0.833,'pos':0.154,'compound':0.9694} 需要将“ neg”,“ neu”,“ pos”,“ compound”作为新列添加到现有数据框中,并将其对应的值添加为行

1 个答案:

答案 0 :(得分:0)

from_dict方法期望迭代或dict作为键的值。

X['neg'],X['neu'],X['pos'],X['compound'] = 'NaN','NaN','NaN','NaN'

for i in range(len(x)):
    ss = sid.polarity_scores(X.loc[i,'essay'])
    for j,k in ss.items():
        X.loc[i,j] = k