我是python的新手。我有一个NLP项目,需要从我的关键字删除频率。我在列表中的一行上成功地做到了这一点。
因此输入: tokens= 'fibre','16',';','quoi','1',';','dangers','1',
使用
tokens = [word for word in tokens if word.isalpha()输出是这个'fibre','quoi','dangers',
现在,我想将其应用于整个专栏。这就是我所拥有的:
from nltk import word_tokenize,sent_tokenize
tokens = cleaningkey.apply(word_tokenize)
tokens.head(5)输出:
0 [fibre, 16, ;, quoi, 1, ;, dangers, 1, ;, comb...
1 [restaurant, 1, ;, marrakech.shtml, 1]
2 [payer, 1, ;, faq, 1, ;, taxe, 1, ;, habitatio...
3 [rigaud, 3, ;, laurent, 3, ;, photo, 11, ;, pr...
4 [societe, 1, ;, disparition, 1, ;, proche, 1, ...
Name: text_norm, dtype: object我尝试了不同的方法,但还是得到了(list‘对象没有’isalpha‘属性)。有人能告诉我该怎么做吗?
谢谢!
发布于 2020-04-10 23:34:43
您应该将测试函数应用于列表的每一项:
cleaningkey.apply(lambda lst: [word for word in lst if word.isalpha()])
#0 [fibre, quoi, dangers]
#1 [restaurant]或者:
df.cleaningkey.apply(lambda lst: list(filter(str.isalpha, lst)))
#0 [fibre, quoi, dangers]
#1 [restaurant]https://stackoverflow.com/questions/61143185
复制相似问题