在 Pandas Dataframe 中使用 NLTK 包进行句子标记化

Sentence tokenization using NLTK package in Pandas Dataframe

我有一个 table 如下:

姓名 评论
麦克 迈克评论一。 Mr.Mikes 评论 2. 麦克评论 3
杰克 Mr.Jacks评论一条。 Jacks 评论 2...例如,这是示例

我想要如下输出:

姓名 评论
麦克 麦克评论一
麦克 Mr.Mikes 评论 2
麦克 麦克评论 3
杰克 Mr.Jacks评论一条
杰克 杰克评论 2
杰克 例如这是例子

使用nltk.sent_tokenize with DataFrame.explode:

import nltk

df['comment'] = df['comment'].apply(nltk.sent_tokenize)

df = df.explode('comment')
print (df)
   Name                                 comment
0  Mike                      Mikes comment one.
0  Mike                     Mr.Mikes comment 2.
0  Mike                         Mikes comment 3
1  Jack                   Mr.Jacks comment one.
1  Jack  Jacks comment 2... e.g This is example