所有大熊猫细胞的词形还原

jam*_*mes 7 python pandas

我有一个熊猫数据帧.有一列,我们将其命名为:'col'此列的每个条目都是一个单词列表.['word1','word2'等]

如何使用nltk库有效地计算所有这些单词的引理?

import nltk
nltk.stem.WordNetLemmatizer().lemmatize('word')
Run Code Online (Sandbox Code Playgroud)

我希望能够在pandas数据集的一列中找到所有单元格的所有单词的引理.

我的数据类似于:

import pandas as pd
data = [[['walked','am','stressed','Fruit']],[['going','gone','walking','riding','running']]]
df = pd.DataFrame(data,columns=['col'])
Run Code Online (Sandbox Code Playgroud)

tit*_*ata 6

您可以使用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)
Run Code Online (Sandbox Code Playgroud)