Car*_*men 4 sorting dataframe pandas
我有一个包含一列的数据框,我想对其进行排序.键入以下代码为我提供了一个已排序的数据框:
sort = tst.sort(["Mean"], ascending = False)
Mean
SIMULATION
Sim_758 1.351917
Sim_215 1.072942
Sim_830 0.921284
Sim_295 0.870272
Sim_213 0.845990
Sim_440 0.822394
Run Code Online (Sandbox Code Playgroud)
这将是函数的一部分,该函数将应用于其他数据框.出于这个原因,我需要对数据帧进行排序,而不提及列名称"mean".
有没有办法按列的值对数据帧进行排序,只显示列的位置?
jez*_*ael 10
我认为你可以选择第一列tst.columns[0],更好的是使用sort_values因为sort返回警告:
FutureWarning:sort(columns = ....)已弃用,请使用sort_values(by = .....)
sort = tst.sort_values(tst.columns[0], ascending = False)
Run Code Online (Sandbox Code Playgroud)
print (tst)
Mean
SIMULATION
Sim_213 0.845990
Sim_758 1.351917
Sim_830 0.921284
Sim_295 0.870272
Sim_215 1.072942
Sim_830 0.921284
Sim_295 0.870272
Sim_440 0.822394
print (tst.columns[0])
Mean
sort = tst.sort_values(tst.columns[0], ascending = False)
print (sort)
Mean
SIMULATION
Sim_758 1.351917
Sim_215 1.072942
Sim_830 0.921284
Sim_830 0.921284
Sim_295 0.870272
Sim_295 0.870272
Sim_213 0.845990
Sim_440 0.822394
Run Code Online (Sandbox Code Playgroud)