如何在不更改Pandas 0.20.1中的列顺序的情况下连接pandas Dataframe?

时间:2020-07-01 17:48:27

标签: python pandas dataframe

我有一个单列数据框“ new_list”,如下所示:

   list    
0   LAX
1   CHI
2   HOU

我正在隐瞒我的“ global_list”数据框,如下所示:

   list  src dest
0   LAX    1    0
1   CHI    0    1

希望将“ HOU”作为一行添加到“ global_list”中,同时保持如下顺序:

   list  src dest
0   LAX    1    0
1   CHI    0    1
2   HOU   NaN NaN

但是,当我运行global_list = pd.concat([global_list, new_list]).groupby('list', as_index=False).first()

我最终将src和dest列翻转了(我认为是因为它们按字母顺序排序)

   list  dest src
0   LAX    0    1
1   CHI    1    0
2   HOU   NaN NaN

我阅读了可以设置sort=False in the concat statement的信息,但是该解决方案适用于较新版本的熊猫(我的版本为0.20.1,无法更新)。在为该较早版本的熊猫交战时,还有另一种方法来维持秩序吗?

1 个答案:

答案 0 :(得分:1)

在进行连接之前

cols = global_list.columns.tolist()

然后连接后,您可以像这样重新排序:

global_list = global_list[cols]

如果您无法将熊猫升级到最新的受支持版本,这是一种解决方法。

相关问题