2017-04-06 49 views

回答

2

如果你要保持你的数据框不变,只是想对它进行排序...
这是假设col1是列在您的数据帧df

选项1

df.iloc[df['col1'].astype(int).argsort()] 

选项2
也可以使用pd.to_numeric

df.iloc[pd.to_numeric(df['col1']).argsort()] 

选项3
更多效率可以重建操纵底层numpy的阵列

v = df.values 
a = df['col1'].values.astype(int).argsort() 
pd.DataFrame(v[a], df.index[a], df.columns) 

See also

2

您可以在排序前试试这个:

df['col1'] = df['col1'].astype(int) 
相关问题