gpt4 book ai didi

python - 如何根据具有相同列但顺序不同的另一个数据框对列重新排序

转载 作者:太空狗 更新时间:2023-10-30 00:43:10 24 4
gpt4 key购买 nike

我想知道是否有一种方便的方法可以根据另一个具有相同列但顺序不同的数据框对数据框的列进行排序。或者,我是否必须进行循环才能实现此目的?

最佳答案

试试这个:

df2 = df2[df1.columns]

演示:

In [1]: df1 = pd.DataFrame(np.random.randint(0, 10, (5,4)), columns=list('abcd'))

In [2]: df2 = pd.DataFrame(np.random.randint(0, 10, (5,4)), columns=list('badc'))

In [3]: df1
Out[3]:
a b c d
0 8 3 9 6
1 0 6 4 7
2 7 2 0 7
3 0 5 1 8
4 6 2 5 4

In [4]: df2
Out[4]:
b a d c
0 3 8 0 4
1 7 7 4 2
2 2 7 3 8
3 2 4 9 6
4 3 4 7 1

In [5]: df2 = df2[df1.columns]

In [6]: df2
Out[6]:
a b c d
0 8 3 4 0
1 7 7 2 4
2 7 2 8 3
3 4 2 6 9
4 4 3 1 7

替代方案:

df2 = df2.reindex_axis(df1.columns, axis=1)

注意:Pandas reindex_axis 自 0.21.0 版起已弃用:改用 reindex。

df2 = df2.reindex(df1.columns, axis=1)

关于python - 如何根据具有相同列但顺序不同的另一个数据框对列重新排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42493255/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com