pandas plot label_数据科学| 手把手教你用 pandas 索引、汇总、处理缺失数据

d2fb278ec06a11d1ae012af16f5a7670.png

作者:Paul

9eead1fb8e843daef30f84aa913ffe5f.png

编者按:

pandas提供了很多常用的数学和统计方法,本文中将用十分详细的例子来具体进行介绍;另外在许多数据分析工作中,缺失数据是经常发生的,将会具体介绍如何处理缺失数据。本文十分详细并实在低介绍了pandas处理数据的基本方法,十分建议各位对pandas学习感兴趣的同学下载代码亲自运行进行实际操作。

pandas 索引对象

pandas的索引对象负责管理轴标签和其他元数据(比如轴名称等)。构建Series或DataFrame时,所用到的任何数组或其他序列的标签都会被转换成一个Index。

Index对象是不可修改的(immutable),因此用户不能对其进行修改。不可修改性非常重要,因为这样才能使Index对象在多个数据结构之间安全共享。

pandas中主要的index对象

8f7b4132d709f3c469c3bc33ea83759b.png

Index的方法和属性

68053a2418ca1a40cfff3324f8977da5.png

d8ca8e5ab0afe8857ad43212380341bb.png

实例如下

322ec7d79cd698a565ac9fa16a20446a.png

d95642771ebc827e1cfb2814d25b3257.png

a4de1c14c20bd792d0d7ea314557f7ea.png

b3c3f2dbdc2484faf4e0da01526d8aee.png

Pandas 重新索引

● 创建一个适应新索引的新对象,该Series的reindex将会根据新索引进行重排。如果某个索引值当前不存在,就引入缺失值。

● 对于时间序列这样的有序数据,重新索引时可能需要做一些插值处理。method选项即可达到此目的。

reindex函数的参数

93c98ce05b0cfa7f7d906f0af05bd4d0.png

a600d2c0bb15bbf45fce61d59e3b1977.png

8c91d5cce97fb05b813de625d489421f.png

bf0335e5f1ae640c30b41b4f012b313c.png

41fa1ba1e2202f9f5eb2d384945647b8.png

c494580e1f376362abca295025041ab8.png

bd4ffab7c73b0f3ffeada1af7f473953.png

090582db1cde2ca55a7666ad6ce3d5dc.png

185036ccd6e0e20ce79fb7294b7bb82b.png

丢弃指定轴上的项

丢弃某条轴上的一个或多个项很简单,只要有一个索引数组或列表即可。由于需要执行一些数据整理和集合逻辑,所以drop方法返回的是一个在指定轴上删除了指定值的新对象

342991a3a29754ea2aa7600eda82e534.png

83c30fe0e8bb934fb1fe4903f6d12e32.png

7a1664a89df8b2be7323d77a80ae3c65.png

c95354061879216d0d25e69eadb0eec1.png

c95354061879216d0d25e69eadb0eec1.png

Pandas 索引、选取和过滤

● Series索引(obj[...])的工作方式类似于NumPy数组的索引,只不过Series的索引值不只是整数。

● 利用标签的切片运算与普通的Python切片运算不同,其末端是包含的(inclusive)。

● 对DataFrame进行索引其实就是获取一个或多个列

● 为了在DataFrame的行上进行标签索引,引入了专门的索引字段ix。

DataFrame的索引选项

901f5fd2424ea04632e0aecd18b89a69.png

9bff5e07f6ab38bed79883e043d0e047.png

79b835d116a273fde900da48145cf393.png

472c783e57ef7b65ea4009c2607c252c.png

63d7da19288bf1164eb5d38dc3c336f0.png

f864e2c252e8d030895cafc67f6b1012.png

27a6deb9e69214759a8e6fc848a5f399.png

5a1b36ed26aed556d1f60fb8da9ae617.png

bb94dbd4917f1f00d7ea80d841910d4c.png

Pandas 算术运算和数据对齐

● 对不同的索引对象进行算术运算

● 自动数据对齐在不重叠的索引处引入了NA值,缺失值会在算术运算过程中传播。

● 对于DataFrame,对齐操作会同时发生在行和列上。

● fill_value参数

● DataFrame和Series之间的运算

a50929c019c3c95124772d0bc6182179.png

ab83603187f6069837ad94c081f48cdb.png

dde1f476bf5ae003b1a84e5609697093.png

a2b865fad65dd5b0a4b3722b9fcca6ad.png

3763e22bc38f3c80e073367b972be295.png

64e88d17ab11345a3ddb9f41d74d21b9.png

d269b5c83d414a3ef51cd7b4f4677df0.png

6ea84e58c1f918d73ac31a79c122fb1c.png

Pandas 函数应用和映射

● numpy的ufuncs(元素级数组方法)

● DataFrame的apply方法

● 对象的applymap方法(因为Series有一个应用于元素级的map方法)

c05d74a1efc824deac41ed3480f66110.png

dc14ab3cf81a9124bdc83780ab3c355c.png

cdd0ff7537bf4c1b992ee910c2ad0cf5.png

f88176df11e3d799e5aff189267b1f4d.png

3490cd3d2a0754318ffe5d03cc99b7d4.png

afaa0bc7e16eb675548b830615fc6a2f.png

Pandas 排序和排名

● 对行或列索引进行排序

● 对于DataFrame,根据任意一个轴上的索引进行排序

● 可以指定升序降序

● 按值排序

● 对于DataFrame,可以指定按值排序的列

● rank函数

bbd1bdc029b6eefc36e894a76c289b8b.png

10ecf84e103ebf342d2110b13aeb1748.png

ee2cf65d72f6c757f8d1013983f5bda6.png

a8b48db2a086892a6bb0d94850f451f9.png

a1f7fd876dbb90cebaa2482267447984.png

7782816a5449dc7a9306fdae5451e132.png

219071d16e51474e799725720df1d248.png

1e2416258508d1edd2a0181fbc4f4e37.png

Pandas 带有重复值的索引

● 对于重复索引,返回Series,对应单个值的索引则返回标量。

cda5a06a5db163f91b2199db9e5f5c0f.png

076d0a1ea66f4a4a8eebf774eeb55870.png

Pandas 汇总和计算描述统计

● 常用方法选项

3944cbec37c14616cc66543cba1218e1.png

Pandas 常用描述和汇总统计函数

0e224c9f8d0cd68cdcdb6d78ad13c42b.png

c3be22708ae0c90522305bf8d6ae894b.png

● 数值型和非数值型的区别

● NA值被自动排查,除非通过skipna选项

730a70da8e9bc0ff1ae09a480c764392.png

b531c3af60ca83dbff13e5512afbd130.png

d4f0ccb63a63b20b6b2f23b5adc9eac5.png

4afc9f5741b907467ddb3042b7d9dc44.png

fa82932b19608c89dcce1d8ce727e735.png

02333e98c129a6ffd8f816dfe983253c.png

Pandas 汇总和计算描述统计 相关系数与协方差

● 相关系数:相关系数是用以反映变量之间相关关系密切程度的统计指标。

● 协方差:从直观上来看,协方差表示的是两个变量总体误差的期望。如果两个变量的变化趋势一致,也就是说如果其中一个大于自身的期望值时另外一个也大于自身的期望值,那么两个变量之间的协方差就是正值;如果两个变量的变化趋势相反,即其中一个变量大于自身的期望值时另外一个却小于自身的期望值,那么两个变量之间的协方差就是负值。

Pandas 汇总和计算描述统计 唯一值以及成员资格

常用方法

b4b2583653c0be3e27370c1fe45b699a.png

d6d72da532b5418a4a8a81782db9662e.png

c12f526f54796adfa07948bc8e0e431d.png

bff3a0aa5f32f3aecebffa5b6b74bbfd.png

318c52037615e5b4d8025236303290a9.png

Pandas 处理缺失数据

● NA处理方法

739bbd50ffefcc3ecbdce1990bbef7b5.png

● NaN(Not a Number)表示浮点数和非浮点数组中的缺失数据

● None也被当作NA处理

5d0d1083f8e3a10de759a3f79a8c2b6b.webp

09bbbda77e8263261381337d2183f263.png

Pandas 滤除缺失数据

● dropna

● 布尔索引

● DatFrame默认丢弃任何含有缺失值的行

● how参数控制行为,axis参数选择轴,thresh参数控制留下的数量

5d0d1083f8e3a10de759a3f79a8c2b6b.webp

667ef322729ad9b9ce058573936da492.png

38ea024f3be650ff17edf94477c14ac4.png

9e80f1412d310d1de2b13562ec387ac9.png

Pandas 填充缺失数据

● fillna

● inplace参数控制返回新对象还是就地修改

37c272a925a04442a335525980725133.png

69aa7118cf82c5fcbff98b372b14f8d1.png

dc073901324bf6dd38493e06512f3f5b.png

2ae19b1e9ca18bef18915d5ae95b0b9e.png

11b9d3cea91031476367936982f81420.png

a7d578f9feba62303f60bb7706939750.png

8e3113824b73d42a97bf973ca75abee4.png

b926c583fecb632dee261e22144233c7.png

Pandas 层次化索引

● 使你能在一个轴上拥有多个(两个以上)索引级别。抽象的说,它使你能以低纬度形式处理高维度数据。

● 通过stack与unstack变换DataFrame

2192f8160844c1d828fc2eff0b71787e.png

b7520e7a18a7265efc82768adad89959.png

1d3012f762333c71ced4845184a12ced.png

872c5e04112e43ef12d8dc16d3f1e047.png

b48a11c52c1e2aabd8110b444e13df89.png

3a163f3d8ad02c35a0de314fd166033a.png

重新分级顺序

● 索引交换

● 索引重新排序

60b86ce445fee39949a366c34ff40dd9.png

3ada64ba6643c81da32f0f620af30491.png

根据级别汇总统计

● 指定索引级别和轴

af66a40ea3a87d00a6afae47bd203249.png

dce45f7ade52be7b76fe1249c78813b4.png

层次化索引 使用DataFrame的列

● 将指定列变为索引

● 移除或保留对象

● reset_index恢复

2b65a0ab22e2c0ed7eb62f971a5398c6.png

952ea1f4bdf3c3ff72799f502afad30f.png

整数索引

● 歧义的产生

● 可靠的,不考虑索引类型的,基于位置的索引。

c61acfec5f5696bc4a50c6d3cdaafca9.png

20de11a9cd489e34d68e388ee618de2d.png

6814bf6b7a10d0b2e7e9c4ae950f9611.png

4a11a115a025a9ae6f5260b75f692b19.png

面板(Pannel)数据

通过三维ndarray创建pannel对象

● 通过ix[...]选取需要的数据

● 访问顺序:item -> major -> minor

● 通过stack展现面板数据

4e3711e88d190eceb9cfcac1b7fb94e1.png

相关文章推荐

要把一件事说的有滋有味,得要慢慢地说,不能着急,这样才能体察人情

读完这篇文章不过瘾?请继续关注我们上一期的文章,来看看我们是如何用python分析周杰伦专辑所有的歌词,并用热词重写《说好不哭》。

点击蓝字标题,即可阅读 数据科学 | 分析周杰伦75775字歌词后,我们用他最爱的词重写了《说好不哭》

其他

数据科学 | 避坑!Python特征重要性分析中存在的问题

数据科学 | 『运筹OR帷幄』数据分析、可视化、爬虫系列教程

4e3711e88d190eceb9cfcac1b7fb94e1.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/410693.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2011年三八妇女节搜索引擎LOGO设计欣赏

今天是一年一度的三八国际妇女节,在这个特别的日子,烈火学院向所有女性致以节日的祝福,祝愿每位女同胞节日快乐,工作愉快!并送上本期的搜索引擎LOGO设计欣赏,希望大家喜欢! 一。百度 有作家曾说…

诺基亚2亿欧元建越南新工场

诺基亚昨天颁布发表将会在越南北部河内左近设立扶植一个新的装配厂,方案于2012年尾投入运用,初期投资达到2亿欧元,约合18.3亿人夷易近币。诺基亚目下当今在世界上拥有10个工场,新厂将会进入到诺基亚的举世制造搜集,为他…

Android 一直往文件写数据_( 十 ) 小众但好用:通过 Google drive 备份与同步 Keepass 数据库...

之前有提到过,keepass 的数据库是加密保存在本地的。而且 keepass 又是多平台免费的密码管理软件。所以如果需要实现 keepass 在多平台读取同一个数据库,我们需要自己搭一个服务器才怪!搭服务器太麻烦,还要额外支出费用&#xff0…

mysql操作数据库

转载于:https://www.cnblogs.com/sunpxit/p/11189089.html

win7锁定计算机会断网吗,win7系统如何设置电脑定时断网

有些win7系统用户在使用电脑过程中,想要给电脑设置定时断网,但是却不知道要怎么操作,其实我们可以通过系统自带的任务计划功能来进行操作,该怎么操作呢,本教程就给大家讲解一下win7系统设置电脑定时断网的详细步骤。1、…

回文_Manacher算法

算法简介:算法的目的是在O(n)的时间复杂度内找到一个字符串中各个字母所在的最大长度的回文串。 此算法用到了一个Rad[]数组的定义,Rad[i]表示回文的半径,即最大的j满足str[i-j1...i] str[i1...ij]。 我们的工作就是把全部的Rad[]求出来。 有两个结论: …

linux 查当前pid_杀死僵尸进程,你需要这些神奇高效的Linux命令行

Linux 高手,其实都是玩儿命令行很熟练的人。命令行的学习捷径Linux 命令有许多强大的功能:从简单的磁盘操作、文件存取,到进行复杂的多媒体图像和流媒体文件的制作,都离不开命令行。在 Linux 的学习中,新手都会遇到这么…

3d000: no database selected_No.[C9]020

No.[C9]-020”Youre Not Alone,never alone。“别难过,别害怕,这个世界还有那么多爱你的人,和支持你的人,生活可能没有那么趁人心意,每个人都如此,别灰心,你并不孤单。(愿我的好朋友…

js实现树形结构化

我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注小歌谣 日常分享前后端知识 前言 今天来讲一下平常我们做权限系统中的树形结构知识 就是如何把对应关系的结构数据转换为可以一个树形结构 const data [{id: 2,pid: 0,path: /course,name: Course,title: 课程管理},{id…

viewer.js实现预览效果

我是歌谣 放弃很容易 但是坚持一定很酷 微信公众号关注小歌谣 日常分享前后端知识 前言 最近涉及一个移动端项目 需要把其中的图片变成可预览的图片 听学弟说 可以利用viewer进行实现 首先 我们需要做的就是先写一个简单demo 先实现其中的效果 实现效果 代码 <!doct…

android 论坛_如何看待百度android吧萎靡现象与吧主的无所作为

百度android吧当初被誉为贴吧中的机锋论坛&#xff0c;现如今缺惨不忍睹&#xff0c;这一切究竟是百度资本家的阴谋还是吧主个人无所作为&#xff1f;然而就此事本人与android吧吧主展开讨论以及对其能力的质疑…这本来只是对android吧吧主随意加精普通的质问…然而该吧主却说我…

logisim优先编码器怎么用_变频电机为什么要用编码器?又该如何选型?

在自动化控制中经常会碰到各种电机的控制&#xff0c;在输送带、升降机、提升小车等较大功率的电机大部分是用变频电机&#xff0c;各个品牌PLC变频器驱动控制变频电机也很普及了。但是&#xff0c;用户经常会有这样那样的问题出现&#xff1a;变频电机为什么要装编码器?不装编…

修复计算机语言设置是哪个键,Windows语言设置后修复计算机的方法

当我们给我们的windows语音设置后&#xff0c;电脑可能会出现点问题&#xff0c;这个时候我们需要修复一下计算机&#xff0c;其中要进入BIOS的操作可能会难倒一部分新手用户&#xff0c;那么该如何操作呢&#xff1f;接下来我给大家整理了该如何一步步设置&#xff0c;一起来了…

笔记本电脑摄像头不能用_聊一款想代替笔记本电脑的产品

每次苹果发布iPad&#xff0c;部分自媒体KOL的言论总让我有一种自己必须转行的错觉&#xff0c;因为在他们眼中&#xff0c;笔记本电脑即将被iPad代替了&#xff0c;甚至还有人称iPad为“笔记本杀手”。谢谢&#xff0c;有被笑到。但一想到诺基亚当年就是这么傲慢地对待iPhone&…

EXCEL数据汇总-数据透视图

转载于:https://www.cnblogs.com/RogerLu/p/11194629.html

android menu菜单 实现点击后不消失_教你修改Windows万年不变的黄色文件夹,让文件也不枯燥...

Windows系统发展至今&#xff0c;文件夹的颜色和样式始终是没有太多的变化&#xff0c;一直是一成不变的shi黄色&#xff01;尽管我们可以通过右键>属性>自定义>来修改文件夹的图标&#xff0c;但这种方法不仅需要我们自己去找图标文件&#xff0c;如果文件夹多了&…

电源功耗压力测试软件,开关电源负载测试经验分享——这篇三分钟小文章着实令人“心动”...

开关电源&#xff0c;又称交换式电源、开关变换器&#xff0c;是一种高频化电能转换装置&#xff0c;是电源供应器的一种。开关电源利用的切换晶体管多半是在全开模式及全闭模式之间切换&#xff0c;这两个模式都有低耗散的特点&#xff0c;切换之间的转换会有较高的耗散&#…

ref是什么意思_终于有人说出A股不敢说的话:为什么股价不断下跌,大单却持续流入,你知道是什么缘由吗?...

(本文由公众号越声策略(yslc188)整理&#xff0c;仅供参考&#xff0c;不构成操作建议。如自行操作&#xff0c;注意仓位控制和风险自负。)炒股想成功牢记以下几点&#xff1a;第一、选股方法。字面意思很简单&#xff0c;但是也是个集大成的东西。你靠着均线能选股&#xff0c…

xp计算机关闭139端口,小编搞定xp系统电脑关闭139端口的图文方法

我们在使用xp系统的过程中,经常需要对xp系统电脑关闭139端口进行设置&#xff0c;可能很多用户都不知道怎么对xp系统电脑关闭139端口进行设置&#xff0c;但当我们遇到对xp系统电脑关闭139端口的设置方法非常简单&#xff0c;只需要点击“开始”&#xff0c;选择“运行”&#…

c++中计算2得n次方_《一元二次方程》单元试卷,从中总结出5个考点,初三学生应知道...

俗话说&#xff1a;“工欲善其事&#xff0c; 必先利其器。 ” 学好一元二次方程必须熟练掌握它的重要考点&#xff0c;再通过有针对性地做练习&#xff0c;提高解题能力。为了帮助大家切身感受一元二次方程这章的重要考点&#xff0c;下面将为大家详细解析一份单元模拟试卷&am…