我对tweets做了一个情绪分析,但是现在我必须把情绪附加到tweet文本中的每个单词上。我的情绪分析是基于一本词典中出现的一组词。我希望这个例子能帮助你。
我试过使用这个函数,但在这里不起作用。
def append_sentiment(sentences, sentiment):
return [(word, sentiment) for sentence in sentences
for word in sentence.split()]
append_sentiment(df['text'], df['score'])
例子:
id | text | score
12 | I like this | 2
想要的结果:
id | text | score
12 | ('I', 2), ('like', 2), ('this', 2) | 2
最佳答案
使用(word, sentiment)
可以轻松地构造itertools.repeat
元组:
from itertools import repeat
mapped = df.apply(lambda row: list(zip(row.text.split(), repeat(row.score))), axis=1)
print(mapped)
0 [(I, 2), (like, 2), (this, 2)]
关于python - 将情感附加到数据框中的每个单词,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52793833/