需要帮助将数据从一列移动到另一列

Posted

技术标签:

【中文标题】需要帮助将数据从一列移动到另一列【英文标题】:Need helping moving data from one column to another 【发布时间】:2021-06-28 16:13:55 【问题描述】:

python 和 pandas 的新手并试图解决这个问题。

我正在处理一个非常混乱的数据集。有 500 行和 9 列。在少数情况下,应该在第 9 列中的数据已与第 8 列数据一起被索引到第 8 列。

    ... Col 8          Col 9
 0     2 weeks         No. 13
 1     1 week          No. 2
 2  12 weeks, No 1
 3    15 weeks         No. 8
 4  7 weeks, No. 1           

如何分离数据并移动到正确的列?

我应用了一个 split(),但不知道如何移动它。 我想我需要使用 apply(),但不确定如何使用。

有什么建议吗?

【问题讨论】:

【参考方案1】:

您可以split()expand=True,然后fillna() 来填充缺失值:

df[['Col 8', 'Col 9']] = df['Col 8'].str.split(',', expand=True).fillna(1: df['Col 9'])

#       Col 8   Col 9
# 0   2 weeks  No. 13
# 1    1 week   No. 2
# 2  12 weeks    No 1
# 3  15 weeks   No. 8
# 4   7 weeks   No. 1

【讨论】:

太棒了!有效。谢谢。有没有办法从 col 8 中删除额外的数据? @Faust_ARP32 我更新了答案。看看这是否适用于您。 是的!做到了。非常感谢!

以上是关于需要帮助将数据从一列移动到另一列的主要内容,如果未能解决你的问题,请参考以下文章

如何在同一个表中将数据从一列复制到另一列?

转换后将数据从一列复制到同一表中的另一列

如果满足条件,熊猫将值从一列复制到另一列

如何将节点从一列div拖到另一列

Pandas 根据非恒定值的第三列将值从一列复制到另一列

SQL根据条件将值从一列复制到另一列