将数据框中一列的字符串与列表中的一组单词进行比较
Compare strings of a column in a dataframe with a set of words in a list
我有一个包含推文的单列 full_text
的数据框,还有一个包含否定词的列表 negative
。我想创建一个新列,如果在推文中找到否定词 1
和 0
如果找不到,则 returns 布尔值。
好的,假设我们有一个数据框 data
和列表 negative_words
,如下所示:
data = pd.DataFrame({
'Tweets' : ['This is bad', 'This is terrible', 'This is good', 'This is great'],
})
negative_words = ['bad', 'terrible']
然后我们可以这样做:
1) 我们可以使用 lambda
函数与 any
:
# create lambda with any:
data['Negative'] = data.apply(lambda x: True if any(word in x.Tweets for word in negative_words) else False, axis=1)
并会得到:
Tweets Negative
0 This is bad True
1 This is terrible True
2 This is good False
3 This is great False
我有一个包含推文的单列 full_text
的数据框,还有一个包含否定词的列表 negative
。我想创建一个新列,如果在推文中找到否定词 1
和 0
如果找不到,则 returns 布尔值。
好的,假设我们有一个数据框 data
和列表 negative_words
,如下所示:
data = pd.DataFrame({
'Tweets' : ['This is bad', 'This is terrible', 'This is good', 'This is great'],
})
negative_words = ['bad', 'terrible']
然后我们可以这样做:
1) 我们可以使用 lambda
函数与 any
:
# create lambda with any:
data['Negative'] = data.apply(lambda x: True if any(word in x.Tweets for word in negative_words) else False, axis=1)
并会得到:
Tweets Negative
0 This is bad True
1 This is terrible True
2 This is good False
3 This is great False