如何将两个 Pandas Dataframe 列堆叠在一起?

2024-05-07

是否有库函数或正确的方法将两个 Pandas 数据框列堆叠在一起?

例如将 4 列变为 2 列:

a1  b1  a2  b2
 1   2   3   4
 5   6   7   8

to

c   d
1   2
5   6
3   4
7   8

我阅读的大部分 Pandas 数据框文档仅涉及连接行和进行行操作,但我确信必须有一种方法可以完成我所描述的操作,并且我确信它非常简单。

任何帮助都会很棒。


您可以使用选择前两列和后两列pandas.DataFrame.iloc。然后,将两个部分的列名称更改为c and d。之后,您可以使用以下方式加入他们pandas.concat.

import pandas as pd
import numpy as np

df = pd.DataFrame(np.arange(1, 9).reshape((2, 4)),
        columns=["a1", "b1", "a2", "b2"])

part1 = df.iloc[:,0:2]
part2 = df.iloc[:,2:4]

new_columns = ["c", "d"]
part1.columns = new_columns
part2.columns = new_columns

print pd.concat([part1, part2], ignore_index=True)

这给你:

   c  d
0  1  2
1  5  6
2  3  4
3  7  8
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将两个 Pandas Dataframe 列堆叠在一起? 的相关文章

随机推荐