将多个句子标记为 python pandas 中的行

Jia*_*ang 1 python nlp nltk dataframe pandas

我有一个这样的文本数据框,

id      text
1       Thanks.  I appreciate your help.  I really like this chat service as it is very convenient.  I hope you have a wonderful day! thanks!
2       Got it. Thanks for the help; good nite.
Run Code Online (Sandbox Code Playgroud)

我想拆分这些文本句子并将它们与每个 id 匹配。我的预期输出是,

id      text
1       Thanks.
1       I appreciate your help.
1       I really like this chat service as it is very convenient.
1       I hope you have a wonderful day!
1       thanks!
2       Got it.
2       Thanks for the help;
2       good nite.
Run Code Online (Sandbox Code Playgroud)

有没有可以处理这个问题的 nltk 函数?

WeN*_*Ben 5

1stsplit然后使用explode,如果您没有升级pandas到 0.25 ,请检查如何取消嵌套(爆炸)pandas DataFrame 中的列?

df.assign(text=df.text.str.split('[.!;]')).explode('text').loc[lambda x : x.text!='']
Out[181]: 
                                                text  id
0                                             Thanks   1
0                             I appreciate your help   1
0    I really like this chat service as it is ver...   1
0                    I hope you have a wonderful day   1
0                                             thanks   1
1                                             Got it   2
1                                Thanks for the help   2
1                                          good nite   2
Run Code Online (Sandbox Code Playgroud)