【问题标题】:Combining the Same Column in Python在 Python 中合并同一列
【发布时间】:2021-11-01 00:54:12
【问题描述】:

我想合并相同的列。这是一个例子:

    Name    X    Name    Y    Name       Z
0   Jack    5    Maria   8    John       12
1   Celine  14   Andrew  14   Jonathan   21

在上面的示例中,我想合并“Name”列。会是这样的:

    Name    X    Y    Z
0   Jack    5    -    -
1   Celine  14   -    -
2   Maria   -    8    -
3   Andrew  -   14    -
4   John    -    -   12
5   Jonathan -   -   21

类型:pandas.core.frame.DataFrame

【问题讨论】:

  • 是什么列表?
  • 你是如何得到源DataFrame的,是用pd.concat吗?

标签: python pandas list dataframe datatable


【解决方案1】:

可能不是最漂亮的解决方案,但确实可以。有待改进。

>>> df
     Name   X    Name   Y      Name   Z
0    Jack   5   Maria   8      John  12
1  Celine  14  Andrew  14  Jonathan  21

>>> pd.concat([df.iloc[:, i:i+2] for i in range(0, df.shape[1], 2)])
       Name     X     Y     Z
0      Jack   5.0   NaN   NaN
1    Celine  14.0   NaN   NaN
0     Maria   NaN   8.0   NaN
1    Andrew   NaN  14.0   NaN
0      John   NaN   NaN  12.0
1  Jonathan   NaN   NaN  21.0

【讨论】:

    猜你喜欢
    • 2018-11-12
    • 2021-02-13
    • 2021-06-21
    • 2014-12-23
    • 1970-01-01
    • 2016-05-24
    • 2013-11-13
    相关资源
    最近更新 更多