鍍金池/ 問答/Python  網(wǎng)絡(luò)安全/ 對(duì)英文文本預(yù)處理?

對(duì)英文文本預(yù)處理?

clipboard.png
如何去掉里面的數(shù)字、標(biāo)點(diǎn)、特殊字符、停用詞等?用python實(shí)現(xiàn)

回答
編輯回答
舊螢火

使用正則來去除不想要的字符。

2017年3月5日 15:40
編輯回答
款爺

既然加了nltk的tag,大概是想問怎么調(diào)nltk的api吧

from nltk.stem import PorterStemmer
from nltk.tokenize import RegexpTokenizer
from nltk.corpus import stopwords

tokenizer = RegexpTokenizer(r'\w+')
stemmer = PorterStemmer()
stop_words = set(stopwords.words('english'))


input_str = input_str.lower()
raw_tokens = tokenizer.tokenize(input_str)
stemmed_tokens = [stemmer.stem(token) for token in raw_tokens]
stemmed_tokens = map(stemmer.stem, raw_tokens)
stemmed_tokens_without_stopword = filter(lambda i: i not in stop_words, stemmed_tokens)
2017年8月3日 07:06
編輯回答
心夠野

直接split(' ')然后過濾停用詞。對(duì)于單字符標(biāo)點(diǎn)符號(hào),可以用translate方法去除

2017年5月5日 15:31