簡體   English   中英

根據另一個pandas數據框中的列排序對列進行排序

[英]Sort a column based on the sorting of a column from another pandas data frame

我有這樣的數據幀:

 df1:
 col1    col2 
  P        1
  Q        3
  M        2

我有另一個數據幀:

df2:
col1      col2
 Q         1
 M         3
 P         9

我想根據df1的col1順序對df2的col1進行排序。 所以最終的數據框將如下所示:

 df3:
 col1     col2
  P         1
  Q         3
  M         9

如何使用熊貓或任何其他有效的方法?

您可以使用set_indexcol1設置為df2索引,並使用df1.col11.loc索引數據幀:

df2.set_index('col1').loc[df1.col1].reset_index()

   col1  col2
0    P     9
1    Q     1
2    M     3

或者@jpp建議您也可以使用.reindex而不是.loc

df2.set_index('col1').reindex(df1.col1).reset_index()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM