pandas中按行或列的值对数据排序如何实现


本文小编为大家详细介绍“pandas中按行或列的值对数据排序如何实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“pandas中按行或列的值对数据排序如何实现”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。在处理表格型数据时,常会用到排序,比如,按某一行或列的值对表格排序,要怎么做呢?这就要用到 pandas 中的 sort_values() 函数。先来看最常见的情况。以下面的数据为例。在 sort_values() 函数中设置 by=’列名’,即可以按这一列值的顺序重新排列行。如以上结果所示,默认是升序排列。还可以做降序排列,在 sort_values() 函数中设置 ascending=False 即可。例如:您是否遇到过这种情况:要排序的某一列数据有相同的值,此时结果会怎么样呢?我们来看下面的例子。从结果看到,“course1” 有两个相同的值 85,此时会依据 index 的先后顺序排列。那如果不想按 index 顺序,想要自己设定相同值的排序方式,应该怎么做呢?可以设置第二列,对于第一列的相同值,参照第二列的值排序。例如:可以看到,by 参数中的第二列 “course2” 只在第一列 “course1” 中有相同值时起作用,因此只有 “Anna” 和 “Paul” 所在的这两行数据位置互换,其它行位置不变。在实际中还可能会遇到这种情况,数据中大小写都有,比如例子数据的 “sport” 列。按这一列对数据排序,结果如下:看结果发现,大写字母排在小写字母前面,因此 “Volleyball” 所在行排在 “baseball” 所在行前面,但这并不是我们想要的排序结果。那应该怎么做,才能按字母顺序排序呢?可以设置 sort_values() 函数的 key 参数。此时的排序结果就是按字母顺序排列。前面介绍的操作中,每次都生成了一个新的数据 df_sort,并没有改变原数据。但是,有时可能数据太大,而原数据后续不再使用。为了节省空间,想直接在原数据上改动。应该怎么办呢?只要在 sort_values() 函数中设置 inplace=True。需要注意的是,这种情况只适用于各列数据类型相同的情况,例如下面例子中的数据,每一列数据都是数值型。而前面例子的数据既有数值型,又有字符型,无法按行的值排序。按行的值排序时,设置 by 参数为某行的 index 名,并且 axis=1。按行值排序在 sort_values() 函数中设置 ascending, key, inplace 等参数的方式都与前面免费云主机域名介绍的按列值排序相同。这里仅以按多行的值对数据排序为例。读到这里,这篇“pandas中按行或列的值对数据排序如何实现”文章已经介绍完毕,想要掌握这篇文章的知识点还需要大家自己动手实践使用过才能领会,如果想了解更多相关内容的文章,欢迎关注百云主机行业资讯频道。

相关推荐: elementui中如何使用el-tabs切换实时更新数据

这篇文章主要讲解了“elementui中如何使用el-tabs切换实时更新数据”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“elementui中如何使用el-tabs切换实时更新数据”吧!项目中使用el-tab…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

Like (0)
Donate 微信扫一扫 微信扫一扫
Previous 05/15 11:56
Next 05/15 12:35

相关推荐