DataFrame如何根据两列或多列数据进行联合排序
来源:网络收集 点击: 时间:2024-04-28如图所示,我们现有数据log_data包含如下四列信息:user_id,post_id,date,act_type(数据中的信息并未按照一定的顺序进行排列)

现在我们想按照如下规则对数据进行排列:(1)依据时间先后顺序;
(2)在依据时间先后顺序的前提下,按照用户id由小到大进行排序
3/10实现上述目的,我们需要使用到sort_values( )函数。具体用法如下:
DataFrame.sort_values(by=##, axis=0, ascending=True,inplace=False)
4/10第一步:确定所依据列的先后顺序,例如,这里我们是先按照date列,再按照user_id列,那么by后面需要数据的就是:,即:
log_data.sort_values(by=, )
5/10第二步:我们依据的列索引信息对数据进行重新排序,所以axis后面依旧输入0,即:
log_data.sort_values(by=, axis=0, )
6/10第三步:输入排序的形式,即按照升序还是降序。这里我们都选择升序,即由小到大,将ascending后面设置为True。
log_data.sort_values(by=, axis=0, ascending=, )
7/10第四步:是否替换原始数据,这里我们选择不替换,也就是将inplace设置为False,将墨争良替换后的数据另保存给一个新变量(log_data_test):
log_data_test =log_data.sort_values(by=, axis=0,ascending=, inplace=False)
8/10得到结果如睡铲图所示

可以看到排序后的数据,首先是按照时间进行排序的

时间相同时,是按照id由小到大进行排序的

如果选择多个列组合排序,排序方式,即ascending也需要进行相应的多个设置
PANDAS排序DATAFRAME排序PANDAS多列排序PANDAS两列排序PYTHON版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_614469.html