所有熊猫细胞的均化
我有一个熊猫数据框。有一个列,我们命名为:’col’该列的每个条目都是单词列表。[‘word1’,’word2’等”
如何使用nltk库有效地计算所有这些单词的引理?
import nltk
nltk.stem.WordNetLemmatizer().lemmatize('word')
我希望能够为熊猫数据集的一列中所有单元的所有单词找到一个引理。
我的数据类似于:
import pandas as pd
data = [[['walked','am','stressed','Fruit']],[['going','gone','walking','riding','running']]]
df = pd.DataFrame(data,columns=['col'])
-
您可以使用
apply
来自pandas的函数来对给定字符串中的每个单词进行词素化。请注意,有很多方法可以标记文本。您可能必须删除符号,例如.
如果使用空白标记器。下面,我给出一个示例,说明如何对示例数据框的列进行定标。
import nltk w_tokenizer = nltk.tokenize.WhitespaceTokenizer() lemmatizer = nltk.stem.WordNetLemmatizer() def lemmatize_text(text): return [lemmatizer.lemmatize(w) for w in w_tokenizer.tokenize(text)] df = pd.DataFrame(['this was cheesy', 'she likes these books', 'wow this is great'], columns=['text']) df['text_lemmatized'] = df.text.apply(lemmatize_text)