文档章节

pandas 常用的函数

AllenOR灵感
 AllenOR灵感
发布于 2017/09/10 01:25
字数 1176
阅读 4
收藏 0

这篇教程是翻译MANU JEEVAN PRAKASH写的 Pandas 教程,作者已经授权翻译,这是原文

在Python中,Pandas 是一个很好地数据处理工具。在这篇文章中,我们将讨论最常用的一些方法,我们使用有关橄榄油的数据集,你可以从这个页面下载到实验数据。当你读完这篇文章后,我希望可能帮助你很快的进行数据处理。那我们开始学习吧。

1. 导入数据

这个橄榄油数据集由八个特征值(油中的脂肪酸水平)和九个类别(意大利地区)组成。如下是八个特征值:

palmitic     棕榈酸
palmitoleic   棕榈油酸
stearic    硬脂酸
oleic    油酸
linoleic    亚油酸
linolenic    亚麻酸
arachidic    花生酸
eicosenoic 二十碳烯酸

我们使用 pd.read_csv() 命令来导入数据集,并且返回最上面的5行数据。如下图:


2. 重命名函数

我们计划将数据的第一列的名字 Unnamed: 0 修改为 area_Idili,那么我们可以使用重命名函数来实现这个操作。参数 inplace = True 表示你是否要修改。我们执行这个函数,得到如下结果:


3. Map操作

如果我要将 area_Idili 这一列的前面的数字标号去掉,那么我就会使用 map 函数来实现这个功能。map 函数将会遍历数据的每一行,如果你了解一点 MapReduce 的话,那么久很容易理解这一点了。我们运行这个操作,得到如下结果:


4. apply 函数

apply 函数是一个很灵活的函数,它能将函数应用到每一个列中。比如,我们想要把所有的酸的那一列的值缩小 100 倍,那么我们就可以使用这个函数,如下:


5. shape 和 columns 函数

shape 函数可以得到当前数据的维度,如下:


olive_oil.columns 函数将会返回每一列的列名,如下:


6. unique 函数

unique 函数是一个去重函数,我们应用 olive_oil.region.unique() 函数去得到一共有几个 region ,结果是 [1, 2, 3]应用 olive_oil.area.unique() 函数去得到一共有几个 area ,结果是 [1, 2, 3, 4, 5, 6, 9, 7, 8]。具体如下:


7. crosstab 函数

crosstab 函数能简单计算两个因子的交叉列表,比如我们将这个函数应用到 arearegion 中,得到如下结果:


8. 访问数据的子集

如果我们只想访问数据的某几个子列,而不是全部列,那么可以使用如下方法:


如果我们只想访问其中的一个列,那么可以使用 olive_oil['palmitic'] 或者 olive_oil.palmitic

9. 可视化

plt.hist 函数可以实现可视化,具体如下:



10. groupby 和 statistic 函数

groupby 函数可以按照键值将元素进行一个聚合,比如我们聚合 region 1, 2, 3,可以使用函数 olive_oil.groupby('region') 。并且我们使用 describe 函数来做一个简单的分析,具体结果如下:



你也可以使用 olive_oil.groupby('region').std() 函数来计算标准偏差,具体如下:


11. aggregate 函数

aggregate 函数可以对数据做一个聚合操作,让数据看起来更加方便,比如我们将经过 groupby 的数据中的 mean 进行一个聚合,得到如下结果:


12. join 函数

我们先对数据进行一个重命名,具体如下:


之后,我们做一个 join 操作,具体如下:


13. 元素比较操作

你还可以对数据的特定部分进行屏蔽。

如果我们要去检查数据中的 eicosenoic 列中的元素是否小于 0.05 ,那么我们就可以使用这个操作 olive_oil.eicosenoic < 0.05 ,如果数据是小于 0.05 的,那么操作将返回 true ,如果数据不是,那么操作将返回 false 。具体结果如下:


14. 处理缺失数据

在很多真实数据集中,数据缺失是一个很常见的问题。那么我们经常做的两种方法是丢失缺失的数据或者补全缺失的数据。

我们先创建一个数据集,如下:


dropna 函数可以去除含有缺失元素的数据行,保留完整数据。具体结果如下:


fillna 函数可以补全缺失的数据元素。首先,我们先来创建一个新的数据集,具体如下:


之后,我们来使用 fillna 函数来补全里面的缺失值,具体结果如下:


至此,我们学习完了 14 个常用的方法。如果你想深入学习,那么我推荐你可以去学习这本书 Python for Data Analysis


完整代码,点击这里

本文转载自:http://www.jianshu.com/p/8bf430281a5c

共有 人打赏支持
AllenOR灵感
粉丝 11
博文 2635
码字总数 83001
作品 0
程序员
私信 提问
pandas指南:做更高效的数据科学家

摘要:Python是开源的,所以有很多开源固有的问题。如果你是Python新手,很难知道针对特定任务的包哪个是最好的。你需要有经验的人来告诉你。今天我要告诉你们的是:在数据科学中,有一个软件...

【方向】
今天
0
0
PySpark SQL常用语法

许多数据分析师都是用HIVE SQL跑数,这里我建议转向PySpark: PySpark的语法是从左到右串行的,便于阅读、理解和修正;SQL的语法是从内到外嵌套的,不方便维护; PySpark继承Python优美、简洁...

真依然很拉风
2018/05/14
0
0
量化投资中常用python代码分析(一)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qtlyx/article/details/80515077 pandas的IO 量化投资逃不过数据处理,数据处理逃不过数据的读取和存储。一般...

钱塘小甲子
2018/05/30
0
0
Pandas初学者代码优化指南

原文:A Beginner’s Guide to Optimizing Pandas Code for Speed 作者:Sofia Heisler 翻译:无阻我飞扬 摘要:Pandas 是Python Data Analysis Library的简写,它是为了解决数据分析任务而创...

dev_csdn
2017/11/21
0
0
Python+pandas实现时间序列数据扩展案例一则

感谢山东科技大学李超老师提供应用背景。 在分析时序数据的有些场合下,可能每个月只能拿到一个数据,然而实际处理时,需要把这个数据扩展到该月的每天,且每天的数据相同。 演示代码: 某次...

oh5w6hinug43jvrhhb
2017/12/16
0
0

没有更多内容

加载失败,请刷新页面

加载更多

大数据处理也要安全--关于MaxCompute的安全科普

摘要: 企业从未像今天这样可以轻易地存储和使用大数据。然而,当您在使用大数据产品时,是否考虑过其中的安全问题呢?庆幸的是,阿里云产品专家和安全专家早就想你所想急你所急,先行一步将...

阿里云云栖社区
31分钟前
1
0
vue如何编写组件可以通过Vue.use()使用

一般平时用别人的组件时都是通过import引入然后Vue.use()来使用,那么如何让我们写的组件也可以用这种方式使用呢? 1.首先新建一个文件夹例如:Home,然后在该文件中新建两个文件Home.vue和i...

北辰丨丶
31分钟前
2
0
SpringBoot自动配置原理

前言 只有光头才能变强。 文本已收录至我的GitHub仓库,欢迎Star:https://github.com/ZhongFuCheng3y/3y 回顾前面Spring的文章(以学习的顺序排好): Spring入门这一篇就够了 Spring【依赖注...

Java3y
36分钟前
2
0
如何伪装成一个服务端开发(十) -- Spring MVC 源码

前言 在第七篇我们已经聊过了一些Spring MVC的运行原理,当然大多数人应该还是和我一样迷迷糊糊,只知道一个大概的运行过程,这一篇,我想要从源码的角度更加进一步去了解Spring MVC的整个运...

街角的小丑
40分钟前
1
0
应用前台耗电怎么破?功耗避雷指南已“佩奇”

使用应用时被用户吐槽手机掉电快、卡顿、过度发热,导致用户体验差,以上情况的产生,应用的功耗设计不足是直接症结。 当前,人们对性能体验的追求前所未有,应用设计功能越来越强大,界面也...

安卓绿色联盟
41分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部