按列对数据框进行排序

时间:2019-02-19 14:45:24

标签: python sorting dataframe

嗨,我需要对数据框进行排序。我的数据框如下所示。

A   B
2   5
3   9
2   7

我想按A列对此进行排序。

A   B
2   5
2   7
3   9

当A列中有重复项时,

sorted_data=data.sort_values(by=['A'], inplace=True)

不锻炼。关于如何解决此问题的任何建议

1 个答案:

答案 0 :(得分:2)

它正常工作。问题是,如果您使用inplace=True,则排序是在原始DataFrame中完成的,data在您的情况下。

如果要订购数据框并将其存储在sorted_data中,请执行以下操作:

sorted_data=data.sort_values(by=['A'])

例如:

>>> df = pd.DataFrame({'A': [2,3,2], 'B': [5,9,7]})
>>> df.sort_values(by=['A'],inplace=True)
>>> df
   a  b
0  2  5
2  2  7
1  3  9

另一种方式:

>>> df = pd.DataFrame({'A': [2,3,2], 'B': [5,9,7]})
>>> sorted_df = df.sort_values(by=['A'])
>>> sorted_df 
   a  b
0  2  5
2  2  7
1  3  9
>>> df
   a  b
0  2  5
1  3  9
2  2  7