首页 > 解决方案 > 如何在python中并排组合两行相同的数据集?

问题描述

我有一个数据集,我想将同一数据集的前两行组合成一个数据集。原始数据集非常大,但我在这里提到了一个小例子。

df

  one  two  three
0  T    H     A
1  N    K     S
2  F    O     R
3  H    L     P  

合并前两行后,它应该如下所示:

df

  one  two  three  one  two  three
0  T    H     A     N    K     S

我对 StackOverflow 很陌生,最近在 python 中开始了我的职业生涯。如果我的问题格式不正确,请提出修改建议。谢谢。

标签: python-3.xpandasdataframe

解决方案


您可以使用df.iloc获取数据帧的两个切片,一个用于偶数行,另一个用于奇数行。然后pd.concat(..., axis=1)让他们重新在一起。

注意pd.concat将尝试在其索引(即0, 1, 2, 3)上对齐输入数据帧,如果其中一个数据帧没有特定索引的数据,则它将填充空值。所以我们需要reset_index得到想要的输出。

df = pd.concat(
    [
        df.iloc[::2].reset_index(drop=True),
        df.iloc[1::2].reset_index(drop=True)
    ], axis=1
)

输出

  one two three one two three
0   T   H     A   N   K     S
1   F   O     R   H   L     P

pd.concat您可以在此答案中阅读更多信息,当然还有用户指南


推荐阅读