龙空技术网

Pandas中数据的排序 #Python数据分析

Super招财喵儿 417

前言:

眼前同学们对“pandas按某两列排序”可能比较关切,小伙伴们都想要剖析一些“pandas按某两列排序”的相关资讯。那么小编同时在网络上收集了一些对于“pandas按某两列排序””的相关知识,希望各位老铁们能喜欢,各位老铁们一起来学习一下吧!

我们现在来看一下数据的排序和排名。说到数据的排序和排名大家并不陌生。我们在小学初中或高中的时候,老师可能都会对成绩进行一个排序。根据成绩的高低,高的在前面,低的在后面,这个叫什么?降序叫排序。

然后你在这次考试当中你排第几?我排第十,我排第20,这叫什么?这叫排名。

在我们的pandas当中可以使用DataFrame对象的一个叫sort_values方法去对数据进行排序。

我们先来看一下这个方法。这个方法当中有些参数。

·第一个参数叫by,就是它,你根据哪一列去进行排序?啥意思?有,你是根据姓名进行排,还是根据年龄进行排?还是根据成绩进行排?这个叫排序的列。

·然后再看第二个叫axis,它的默认值是0,表示的是行排序。当然如果改成1它就会按照列去进行排序。

·然后看第三个参数ascending,这个是表示排序的方式,你是升序排序还是降序排序?它默认值是True表示的是升序排序。如果你是想按照多列去进行排序的时候,那你这块就不需要写1个了,你可以改成列表。

·然后下面这个叫inplace,啥意思?它是一个布尔值,默认值为False。就说如果这个值为True的时候,你就就地排序,在原有的DataFrame上进行排序。如果为False,那么它将产生新的对象。

kind的这个kind的它是指的排序的算法。你去指定一下你的排序所使用什么算法?比如说你可以选择quicksort,这是默认值叫快速排序。你也可以去采用混合排序,或者是堆排序。然后na_position。na的意思表行空值,就空值的位置。

你在排序的过程当中,如果这个表当中有些空数据就是NAN的数据。这部分数据你怎么处理?你是让这部分数据在前还是让这部分数据在后?那你可以通过na_position去指定它。可以有last,还有什么?first默认值是谁?last,最后一个叫ignore_index,叫忽略索引。它的值为True的时候,表示要开始给你标索引了,从0开始标。然后它的值为False的时候,就不管你索引,我忽略。这个是给大家讲到它的参数的说明。

现在通过代码的形式,去演示一下具体的操作。准备了一张Excel表,这个Excel表叫做电脑配件销售记录。先瞅一眼,在Excel表格当中,有你销售,销售的电子商品的名称,有你的销售人员,他的销售的数量,标准单价,以及最后的一个成交额。

现在就把这个读取到我们的拍进当中,然后对成交易这一列开始进行什么排序,就看看一下谁的高发在前面。去新建,重命名排序和排名。先导入数据,import pandas as pd,点read,一个Delete,到磁盘上去,复制文件名去,免得写错,把它复制过来。

开始看一下读取到没df.head(),让它显示前5条数据,室温,显示出来了,但是格式不好看,格式不好看。可以是设置叫set_option,里面写上叫display,点unicode,然后east_asian_width写着这个,你得把它背下来。True就这几个单词运行,这回格式就漂亮很多了。

现在就对这个数据开始进行排序,说好了根据成交金额进行排序,所以df.sort_values,在这个当中,by,by是谁?根据哪一列?根据成交金额这列进行排序,然后什么都不写,先来看一下,什么都不写,重新赋值给df,否则是看不到效果的。在这运行看一下,都显示出来了,让他显示前五条,默认什么序?默认是升序,当然成交金额想看最多的,可以进行降序排序,降序排序,你需要写个ascending。给他一个什么值?给它一个False运行一下,看一下最高的数字排上面了。这个叫什么?这个叫做降序排序。按谁来决定的?ascending,它的值为False的时候表示是降序,你不写的话它默认是升序。我们这个是根据成交金额这一列去排序,可以根据多列去排序。

比如说,我想根据一下它的这一个数量和它的成交金额去排序。在这给大家写一下这个是。开始叫根据多列排序,排序根据哪两列呢?根据我们的数量和成交金额。现在再看一下,在数量,我们是把数量写在前面了,它会先去根据数量去排。在数量情况相同的情况下,它再根据金额进行去排序。在这儿的时候开始写上df,叫df.sort_values。然后在这个当中根据的是两列,两列,所以写列表,先根据数量,再根据我的成交金额。

然后现在我在这写上叫什么呢?ascending让它进行一个降序。最后输出它,把原来这个输出先注释一下。现在看最后一个输出,它的确是降序输出了。找数量相同的蓝牙适配器,这是不是就数量相同。数量相同的时候,成交金额采用的是一个降序的方式。

这个是我们按照多列去进行排序,我给你写上一下数量和成交金额数量相同的情况下,情况下成交这个金额按照什么?按照降序去排序。

标签: #pandas按某两列排序