1
如果我有一個Pandas DataFrame
,我希望按其中一列進行排序,那麼我可以有一個單獨的DataFrame
與它一起排序,即,使得排序在其他DataFrame
上執行相同的排列正在排序?熊貓 - 如何根據其中一個給出的順序對兩個DataFrame進行排序?
請注意,我不能依靠兩個DataFrame
s的行索引最初是在相同的順序。
其他信息 通過@解決方案AMI-tavory似乎並沒有對我.ix
編入索引。但是,如果我將其更改爲.iloc
,它確實有效。我不能重現這個對@ AMI-tavory的示例代碼,但我一起工作的dataframes有這樣的佈局:
>>> fails_sorted_old.dtypes
image object
sampling_pattern object
delta float64
reconstruction_algorithm object
psnr float64
ssim float64
time float64
dtype: object
>>> fails_sorted_old.shape
(126, 7)
當我這樣做:
idx_by_old_psnr = fails_sorted_old.psnr.argsort()
則:
fails_sorted_old.ix[idx_by_old_psnr]
給我一個DataFrame
完整的NaN
s雖然這工作正常:
fails_sorted_old.iloc[idx_by_old_psnr]
奇怪的是,當使用'你做上述結果.ix' I指數我dataframes是一個數據幀充滿了'NaN's。如果我用'.iloc'代替'.ix',它似乎可以工作。 –
發表一個小問題的例子? –
我似乎無法用你的例子重現它,但我想要玩的更大的數據框失敗。 –