Python - 从列中提取/复制分隔文本到新列 xlsx

Posted

技术标签:

【中文标题】Python - 从列中提取/复制分隔文本到新列 xlsx【英文标题】:Python - extract/copy delimited text from from on column to new column xlsx 【发布时间】:2018-10-09 06:53:21 【问题描述】:

我有一个 .xlsx 文件,它有 13 列。我需要从一列中的字符串中提取/复制文本,特别是到一个新列中。列中的字符串由下划线 (_) 分隔符构成:

TextA_TextB - TextB_TextC_TextD_TextE_TextF

我需要将 TextA 专门复制到一个新列中。这里最好的方法是什么?

【问题讨论】:

显示你到目前为止所尝试的... 另外请举例说明您的 实际 数据(比如 5 行),因为它的外观并不完全清楚。见minimal reproducible example。 重新开放,直到我们更清楚。不清楚这里是否需要正则表达式。 【参考方案1】:

你可以试试这个。

一旦你在 DataFrame 中有列

In [30]: df
Out[30]: 
                        a
0  test1_test2_tes3_test4

In [31]: df['a'] = df['a'].apply(lambda x: x.split('_'))

In [33]: df = pd.concat([df, df['a'].apply(pd.Series)], axis=1)

In [34]: df
Out[34]: 
                             a      0      1     2      3
0  [test1, test2, tes3, test4]  test1  test2  tes3  test4

【讨论】:

以上是关于Python - 从列中提取/复制分隔文本到新列 xlsx的主要内容,如果未能解决你的问题,请参考以下文章

如何创建更新查询以将存储为文本的 xml 值提取到新列中

从列中提取日期并在 R 中缺少年份时添加年份

Pandas:使用 apply 将特定列中的行值复制到新列中

Scala DataFrame,将非空列的值复制到新列中

从列中的字符串中提取每行的最大值

检查一列中的值是不是存在于另一列中,如果存在,则将另一列中的值复制到新列中