【问题标题】:Pandas df.str.split() on first element onlyPandas df.str.split() 仅在第一个元素上
【发布时间】:2019-03-08 15:02:38
【问题描述】:

我在数据框中有一列包含聊天对话,每个单元格中的一般格式为:

'姓名代理 : 对话'

我想创建一个仅包含 conversation 部分的新列。

我使用以下代码做到了这一点:

filtered_transcript_text['msgText'].str.split(':', expand = True)

但是,此函数会为每个匹配项创建一个拆分,而不是只为第一个匹配项创建一个拆分。有没有办法只对第一次出现的实例使用 split 函数?

我知道我可以合并其他创建的列,但这对我来说似乎是不正当的。

【问题讨论】:

  • 改用.str.partition(':')?这通常比使用 .str.split(':', expland=True, n=1) 更快,并且更稳定,具体取决于分隔符是否存在。

标签: python pandas dataframe split


【解决方案1】:

尝试添加n=1

filtered_transcript_text['msgText'].str.split(':', expand = True,n=1)

【讨论】:

    【解决方案2】:
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-20
    相关资源
    最近更新 更多