首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Lambda函数检查nltk Wordlist中是否

使用Lambda函数检查nltk Wordlist中是否
EN

Stack Overflow用户
提问于 2021-03-22 21:44:58
回答 1查看 95关注 0票数 0

我有一列包含每个文本中的第一个单词,并试图检查它是否在nltk单词列表中。我的代码是:

代码语言:javascript
复制
from nltk.corpus import words
wordlist = words.words()
reviews['test'] = reviews.apply(lambda x: True if x['FIRST_WORD'] in wordlist else False )

我收到一个错误:

代码语言:javascript
复制
KeyError: 'FIRST_WORD'

不知道为什么,因为这肯定是我的数据集中的列的名称。我把lambda函数设置错了吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-03-22 22:23:35

语法不正确。正确的语法是:

代码语言:javascript
复制
>>> df
  FIRST_WORD SECOND_WORD
0      hello        blah
1         hi        blah
2        xyz        blah

>>> df.apply(lambda x: True if x['FIRST_WORD'] in wordlist else False, axis=1)
0     True
1     True
2    False
dtype: bool

>>> # OR

>>> df['FIRST_WORD'].apply(lambda x : True if x in wordlist else False)
0     True
1     True
2    False
Name: FIRST_WORD, dtype: bool

说,

您可能希望检查单个列上的操作的isin.和applymap之间的差异。

代码语言:javascript
复制
>>> df['FIRST_WORD'].isin(wordlist)
0     True
1     True
2    False
Name: FIRST_WORD, dtype: bool
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66754259

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档