我试图按另一个按特定顺序排序的系列对DataFrame(axis = 0)进行排序.
例:
DataFrame包含CountryCodes的索引:’AUS’,’BWA’….(按字母顺序排序)
系列包含CountryCodes列表及其相关GDP(按GDP排序)
我可以使用DataFrame.join(系列)没问题,然后对列’GDP’进行排序,然后对del DF [‘GDP’]进行排序,但有没有一种方法可以直接执行此操作而无需加入结构?
最佳答案
你可以通过(排序)系列的索引
reindex
:
In [1]: df = pd.DataFrame([[1,2],[3,4]],index=list('ab'))
In [2]: s = pd.Series([2,1],index=list('ab'))
In [3]: s
Out[3]:
a 2
b 1
In [4]: s.sort()
In [5]: df.reindex(s.index)
Out[5]:
0 1
b 3 4
a 1 2