〇,pandas简介
pandas是python数据分析领域最为经典的库之一,基于numpy构建。
pandas中常用的数据结构有:
1,Series:一维数组,有index。Series中只允许存储同种类型数据。
2,DataFrame:二维的表格型数据结构。可以将DataFrame理解为Series的容器。
3,Panel :三维的数组。可以理解为DataFrame的容器。
你发现 pandas库的名字和这三种数据结构名字的关系了吗?本节和接下来的几节我们介绍DataFrame。DataFrame是python在数据分析领域使用最广泛的数据结构。具有以下优点:
数据直观 ———— 就像一个excel表格
功能强大 ———— 极其丰富的方法
DataFrame的概要如下:
DataFrame是一个Series容器,创建和索引方式和Series很像。
DataFrame可以看成是一个有index和columns名称的array,支持向量化。
你可以像操作excel表一样操作DataFrame:插入行和列,排序,筛选……
你可以像操作SQL数据表一样操作DataFrame:查询,分组,连接……
本节我们介绍DataFrame的类SQL操作。
一,表查询
类似 SQL中 select ... where ...
常用的有:布尔索引,query,filter 相关方法
1,利用布尔索引
2,利用query
3,利用filter
二,表合并
两种合并方向:纵向(0),横向(1)
三个常用函数:concat,join,merge
四种合并方式:inner,outer,left,right
concat:根据index或columns合并,支持纵横两个方向合并,支持inner或outer方式。
join:根据index合并,只支持横向合并,支持inner,outer,left,right
merge:根据同名列合并,只支持横向合并,支持inner,outer,left,right
outer:外连接,类似于并集运算,只在单表中出现的记录,未知属性置nan。
inner:内连接,类似于交集运算,只输出两个表中都出现的记录。
left:左连接,以左表索引或key列为序,查找右表信息,未找到置nan。
right:右连接,以右表索引或key列为序,查找左表信息, 未找到置nan。
1,使用 concat 函数合并
2,使用 join 方法拼接
3,使用merge方法合并
三,表分组
表分组类似SQL中的 select ... group by ...操作,可以代替excel表格中的数据透视表功能。
1,分组对象性质
2,在分组上运用聚合函数
3,创建分组的各种方法
Python与算法之美
(Python_Ai_Road)
领取专属 10元无门槛券
私享最新 技术干货