假设下面的字符串是一行的内容,列名为“body”,现在我想从这个字符串中为每个发言人创建一行。
**Helper:**您好,我是虚拟助手Helper,今天有什么可以为您效劳的?您是否在询问:电子书有声读物购买订阅电影等
**Cx说:**电影
预期输出应如下所示:
| 发言人|成绩单|
| - ------|- ------|
| 助手|你好,我是虚拟助手助手,我今天能为你做些什么?您是否询问:电子书有声读物购买订阅电影等|
| 残雪说|电影|
我试过这个但是
Testresult = tempchatdf.body.str.split(":\*\*",expand = True)
2条答案
按热度按时间jogvjijk1#
您可以只使用
str
和split(":")
。这将第一次拆分,并使扬声器(第0个索引)将拆分的其余部分与“:“组合。这样做是为了确保任何额外的“:“返回。
如果字符串包含几行这样的语句,你可以把它放在一个循环中。
iugsix8n2#
下面是使用
re.findall()
匹配body
字符串并创建新df的方法或者可以在列表解析中将re与
pandas.DataFrame.explode
一起使用| 发言人|成绩单|
| - ------|- ------|
| 助手|你好,我是虚拟助手助手,我今天能为你做些什么?您是否询问:电子书有声读物购买订阅电影等|
| 残雪说|电影|