11,二维dataframe——类SQL操作

〇,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)

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180720G09MSN00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券