范文健康探索娱乐情感热点
投稿投诉
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文
国学影视

一文搞懂Pandas数据排序

  来源:AI入门学习
  作者:小伍哥
  数据排序,是使用非常高频的功能,Pandas排序支持做的非常好,主要涉及两个函数,两种数据类型,组合起来四种情况。
  Series排序 Series.sort_index  索引排序Series.sort_values  值引排序
  DataFrame排序 DataFrame. sort_index  索引排序DataFrame. sort_values  值引排序一、Series的排序
  1、sort_index 索引排序
  定义一个Series用于实验s = Series([4,1,2,3],index=["d","a","c","b"]) d    4 a    1 c    2 b    3
  对Series的索引进行升序排序,默认即可,无需使用其他参数s.sort_index() a    1 b    3 c    2 d    4
  对Series的索引进行降序排序,使用ascending=False参数s.sort_index(ascending=False) d    4 c    2 b    3 a    1
  2、sort_values 值引排序
  用 法: Series.sort_values(ascending=True, inplace=Flase)
  参数: ascending:默认为True升序排列,为Flase降序排序inplace:是否修改原始的Series
  对Series的值进行 升序排序 ,默认即可,无需使用其他参数 s.sort_values() a    1 c    2 b    3 d    4
  对Series的 值 进行 降序排序, 使用ascending=False参数 s.sort_values(ascending=False) d    4 b    3 c    2 a    1二、 DataFrame的排序
  1、sort_index 索引排序DataFrame.sort_index(by=None, axis=0, level=None,  ascending=True,  inplace=False,  kind="quicksort",  na_position="last",  sort_remaining=True)by:按照某一列或几列数据进行排序,但是by参数貌似不建议使用axis:0按照行名排序;1按照列名排序level:默认None,否则按照给定的level顺序排列---貌似并不是,文档ascending:默认True升序排列;False降序排列inplace:默认False,否则排序之后的数据直接替换原来的数据框kind:排序方法,{‘quicksort’, ‘mergesort’, ‘heapsort’}, default ‘quicksort’。似乎不用太关心。na_position:缺失值默认排在最后{"first","last"}
  构建数据集 import numpy  as np import pandas as pd data = pd.DataFrame( np.arange(9).reshape(3,3),                  index   = ["0","2","1"],                  columns = ["col_a","col_c","col_b"]) data    col_a  col_c  col_b 0      0      1      2 2      3      4      5 1      6      7      8
  按行的  索引  升序  进行排序,默认按行,升序  data.sort_index()    col_a  col_c  col_b 0      0      1      2 1      6      7      8 2      3      4      5
  按行的  索引  按  降序  进行排序  data.sort_index(ascending=False)    col_a  col_c  col_b 2      3      4      5 1      6      7      8 0      0      1      2
  按列升序的索引进行排序  data.sort_index(axis=1) Out[10]:     col_a  col_c  col_b 0      0      1      2 1      6      7      8 2      3      4      5
  2、sort_values 值引排序
  用 法: DataFrame.sort_values( by,  axis=0,  ascending=True,  inplace=False, kind="quicksort",  na_position="last")
  参 数: by: 字符串或者List<字符串>;如果axis=0,那么by="列名";如果axis=1,那么by="行名"。axis: {0 or ‘index’, 1 or ‘columns’}, default 0,默认按照列排序,即纵向排序;如果为1,则是横向排序。ascending: 布尔型,True则升序,如果by=["列名1","列名2"],则该参数可以是[True, False],即第一字段升序,第二个降序。inplace :布尔型,是否用排序后的数据框替换现有的数据框。kind: 排序方法,{‘quicksort’, ‘mergesort’, ‘heapsort’}, default ‘quicksort’。似乎不用太关心。na_position: {‘first’, ‘last’}, default ‘last’,默认缺失值排在最后面。
  构建实验用数据 data =pd.DataFrame([[2,3,12],[6,2,8],[9,5,7]],                   index=["0", "2", "1"],                   columns=["col_a", "col_c", "col_b"])    col_a  col_c  col_b 0      2      3     12 2      6      2      8 1      9      5      7
  按指定列的值大小顺序进行排序 data.sort_values(by="col_c")    col_a  col_c  col_b 2      6      2      8 0      2      3     12 1      9      5      7
  按多列进行排序 data.sort_values(by=["col_b","col_a"])    col_a  col_c  col_b 1      9      5      7 2      6      2      8 0      2      3     12
  先按 col_b列 降序 ,再按 col_a列 升序 排序 data.sort_values(by=["col_b","col_a"],axis=0,ascending=[False,True])     col_a  col_c  col_b 0      2      3     12 2      6      2      8 1      9      5      7
  按 行 升序排列 data.sort_values(by="2",axis=1)      col_c  col_a  col_b 0      3      2     12 2      2      6      8 1      5      9      7
  按  2行  升序, 0行 降排列 data.sort_values(by=["2","0"],axis=1)     col_c  col_a  col_b 0      3      2     12 2      2      6      8 1      5      9      7

乐视手机时隔4年再回来!此前售后无门8月31日消息,乐视网控股子公司乐融致新电子科技(天津)有限公司的官方微博Letv发布微博揭露乐视新品手机真面目,宝蓝色配色,背部印有Letv的标志,并配备实体指纹识别。对此,有网手机屏分几种?什么叫水滴屏刘海屏瀑布屏全面屏?手机面板(屏幕)材料有四种。分别是TFT屏IPS屏superLCD屏OlED屏。1TFT手机屏幕材质的亮度好,对比度高,层次感强,颜色亮丽鲜艳,缺点是比较耗电。2IPS屏幕材质优点2021全价位性价比超高的手机推荐2021上半年各手机厂商都发布了多款新机,其中也不乏性价比超高的机型下面为大家整理了几款各价位段,很值得购买的手机,供大家购机前的参考,希望下面有你心仪的机型!百元机Redmi9AVBA学习笔记数组数组相关函数Split,JoinSplit拆分字符串函数,语法Split(expression,字符,Limit,compare),第1参数为必写,后面3个参数都是可选项。Expression为需要拆分的数据,字88ms超低延迟40dB自适应降噪持久续航vivoTWS2体验全面升级众所周知,在曾经手机都标配有线耳机的年代,vivo手机配备的耳机的质量和音效体验都使不少用户爱不释手,特别是vivo推出的XT800耳机更是成为了一个时代半入耳式有线耳机的佼佼者。再见了,微信圈子如果要选出一个如今大家最不可或缺的APP,那我相信很多人都会投微信一票,只要你使用智能手机,微信就一定是必装软件,其重要性甚至早就超过了QQ,生活中可以用微信来进行各种消费,学习中互联网公司推送简史,制造1000亿种关心或垃圾震惊了,互联网公司员工竟然在背后偷偷做这种事文王雯清采访王雯清贺乾明姚胤米编辑姚胤米这可是一块宝地。一般是6英寸大小,成年人手掌平摊伸直,从指间到手腕线就是这么长。手机屏幕从睡眠中618真香机,我推荐几款最高才2999元一年一度的618就要到来,各大手机品牌早已预热了好久,作为想要购买手机的伙伴们,想必也按耐不住自己那颗骚动的心,迫不及待地想要入手自己心仪的手机了吧!作为消费者的我们,购买一部手机温州特斯拉事故再反转!否认把油门当刹车,车主说成自己责任才理赔继温州特斯拉失控事件后,又有上海女车主维权,最近一段时间,特斯拉可谓是麻烦不断。近日,一份第三方检测报告称车主错把油门当刹车,让特斯拉再次冲上了热搜。事件回顾温州特斯拉失控事故系车原来微信转账和微信红包区别这么大,以后别再乱用了我们经常在微信中发送红包或转账给其他人,但很少有人知道两者之间的区别。今天,让我们来谈谈微信红包和转帐之间的区别。今天才知道,微信转账和微信红包区别这么大,以后别再乱用了!发出微信能否打好翻身仗!中国广电三座大山压顶探寻宽带市场突围之路喧嚣的5G掩盖了不少问题。对于风口浪尖的中国广电而言,不但要依托700MHz5G在移动通信领域打开局面,也需要充分盘活有线电视固网宽带的资源,在F5G领域站稳脚跟。因为,从去年三大
为什么最近百度搜到的东西越来越少了?还有什么好的搜索引擎好用?推荐几个经常用的搜索引擎一百度推荐指数2虽然百度很多虚假信息广告满天飞,但是可以用的信息还是很多很杂的。可用来搜索很简单很常用的东西,比如搜索wps怎么安装游戏怎么下载等等。二搜狗5g时代就要来了,普通人有什么发财和改变命运的机会?5G时代就要来了,时间表如下2018年开展试点2019年试商用2020年正式商用。对于大多数普通人而言,很难参与5G的实体操作并享受红利,但可以通过买这个产业链的股票来发财。回顾2为什么会有人坚决不买安卓手机,去花更多的钱买iPhone?每当新机潮来临,所有手机厂商都在喊着真香大规模致敬上年度发布的iPhone,因此网友总为安卓药丸争论不休,愤懑地大张挞伐安卓圈的种种不是,也就搞出一个安卓药丸的话题。当然,实事求是iPhoneSE3更多消息曝光,iPhoneSE2无奈价崩沦为百元机此前,网上一直有传言称苹果正在开发iPhoneSE3,近日,这款手机的最新规格已经曝光,值得期待。有传言称,iPhoneSE3将像iPhoneSE2一样保留iPhone8的外观。值你见过与社会脱节最严重,最脱离社会的中年男人是什么样的?我单位有个同事做派保守,几乎和现代社会脱节。他有以下表现可以让现代人大跌眼镜一用的是最便宜的智能手机不到一千元,不会使用微信和支付宝,在外购物和买菜坚持使用现金。所以,他一直带着钱人到中年开始打拼事业,你还有当年的勇气与自信吗?什么时候努力都不晚!有是有,不过可能会比当年差了很多。年轻时无牵无挂而且涉世未深,不懂得人心险恶社会复杂,对自己能力的认知也不够,当然能够勇往直前什么都不怕。而中年人拖家带口,一个中国大部分人都玩微信,外国人玩什么?通过什么方式交流?中国大部分人都玩微信,外国人玩什么?从社交软件来看,国内可以说几乎是微信微博的天下,在国外微信直接对标的是WhatsApp,而微博直接对标的是twitter。先说说微信,目前微信的荣耀与谷歌恢复合作,HONOR50系列海外版本将搭载GMS10月12日,据第一财经消息,荣耀正在寻求海外市场的重启机会,其中恢复与谷歌的合作成为了其今年以来海外市场谈判的重心。此前一日晚间,荣耀海外官方社交平台发布的动态显示,目前荣耀已恢mirror去中心化内容社区,能成为未来的吗?最近有个比较火的区块链社交媒体平台,叫做mirror,访问地址是mirror。xyz,吸引了很多人的关注。mirror这个网站的口号是无需注册,去中心化的数据永久存储,抗审查。功能2022,未来工作行业该如何发展?1云解决方案工程师在我们分析的所有国家中,印度提供的活跃候选人比例最高,为31。7。值得注意的是,其工资中位数也是最低的,这与云计算人才的强劲供应是一致的。在荷兰,找到这种技能是最下一个风口会是什么行业?2020年最赚钱的行业暴利生意有哪些呢,赚钱要趁早,下面就由我来说说未来十年十大不起眼的赚钱行业。中国未来十大赚钱生意一早餐休闲饮品中式特色小吃等餐饮行业民以食为天,14亿中国人一