《利用python进行数据分析》学习笔记三:Pandas模块(下)

《利用python进行数据分析》学习笔记

**

整数索引

**
在pandas对象上使用整数索引有时候会产生一些微小的歧义:,假设我们的索引里包含了0、1、2,这时推断用户需要的是整数索引还是标签索引就会有问题,但是,对于非整数索引,就不会有潜在的歧义:在这里插入图片描述
所以 ,在有包含整数的轴索引时,数据选择需始终使用标签索引,为了更精确的控制,可以使用loc(标签索引)和iloc(整数索引):
在这里插入图片描述

**

算术和数据对齐

**
主要介绍的是对两个数据进行数学计算时会根据索引值进行对齐的设定,操作类似于数据库的自动外连接,比较好理解,就不多废话直接上例子好了:
在这里插入图片描述
在这里插入图片描述
DataFrame的对齐是对行和列都成立的:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
**

填充的方法

**
这部分承接上部分,如果想将操作中的NAN缺失值填充为想要的数字或字符,可以使用本节的内容(例子,填充为0):
在这里插入图片描述
(抱歉,图没截完,懒得分两次截了~)
另外,在教材148页,有具体的eSeries和DataFrame的算术方法,以除法(rdiv)为例,使用方法如下:
在这里插入图片描述
还需注意的是,在用reindex进行重建索引时,其实也是可以指定一个不同的填充值的:
在这里插入图片描述
**

在DataFrame和Series之间的数学操作

**
DataFrame和Series数据结构之间的数学操作和Numpy不同维度数组间的操作类似,也是对高维度的每一行进行操作(即所谓的广播机制,具体的内容会在后面学习):
在这里插入图片描述
默认情况下,DataFrame和Series之间的数学操作,会将Series中的索引和DataFrame的列进行匹配,并广播到各行:
在这里插入图片描述
如果存在不在DataFrame列中的索引,则会重建索引和列并联合(当然,值是缺省值):
在这里插入图片描述
如果想在列上广播,行上索引匹配,则需要使用算术方法,并指定轴:
在这里插入图片描述
**

函数应用和映射

**
Numpy的通用函数在Pandas中的操作也类似:
在这里插入图片描述
也存在在一个行上(列上)作用一个函数的情况:
在这里插入图片描述
可以看到,默认的是在列上调用一次,如果需要在行上调用函数,则需要传递轴参数给函数:
在这里插入图片描述
和Numpy中的通用函数一样,也可以使得函数返回值不是一个标量,而是多个Series数组(Numpy中是ndarray数组):
请忽视这多余的空行。。。
逐元素进行应用的函数自然也是有的:
在这里插入图片描述

排序和排名

按列排序:
在这里插入图片描述
在DataFrame中,在行、列上都可以进行排序;
在这里插入图片描述
数据默认是升序,但也可以传递参数改为降序:
在这里插入图片描述
也可以使用sort_values方法使用值来进行排序;
默认情况下,缺失值排在最后:
在这里插入图片描述
对DataFrame数据,可以传递一列或者多列作为排序键(应该就是主次排序吧):在这里插入图片描述
排名是指对数组从1到有效数据点总数分配名次的操作,默认情况下,rank通过将平均排名分配到每个组来打破平级关系:(就是有平级情况,会对这两个平级的排名数进行平均,见例子)
first方法是根据数据出现的先后进行排名名次的分配(针对平级情况):
当然,降序排名的方法也是类似:
在这里插入图片描述
对于DataFrame,可以在行、列上进行排名:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
**

含有重复标签的轴索引

**
尽管很多pandas函数要求索引值是唯一的,但其实这并不是强制的:
在这里插入图片描述
我们可以使用is_unique属性检查索引是否唯一:
在这里插入图片描述
但是,在有重复索引值的情况下,数据选择的操作会和没有重复值的操作有一定的差距,重复索引的标签索引会返回一个序列,单个索引值的标签索引则会返回一个标量:
在这里插入图片描述
在DataFrame中逻辑是类似的:
在这里插入图片描述
**

描述性统计概述和计算

**
于Numpy数组的类似功能相比,pandas内置了处理缺失值的能力:
在这里插入图片描述
对其使用统计性描述的方法会自动排除缺失值:
在这里插入图片描述
当然,也可以不排除缺失值,这需要使用skipna参数:
在这里插入图片描述
有一些方法(比如idxmax,idxmin),返回的是间接统计信息(不是直接返回值):
在这里插入图片描述
有一些方法则是积累型方法:
在这里插入图片描述
也有一些,不是以上的两种方法:
在这里插入图片描述
对于非数值型的数据,describe返回的数据如下:
在这里插入图片描述在这里插入图片描述
pandas统计汇总的完整方法在教材的159页

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
这篇笔记主要介绍了Pandas模块的基本操作和使用方法。PandasPython中一个用于数据分析和处理的常用库,提供了高效的数据结构和数据分析工具,是进行数据处理和数据挖掘的重要工具之一。 一、Pandas数据结构 Pandas主要有两种数据结构:Series和DataFrame。 1. Series Series是一种类似于一维数组的对象,由一组数据和一组与之相关的标签(即索引)组成。Series的创建方式如下: ```python import pandas as pd # 通过列表创建Series s = pd.Series([1, 3, 5, np.nan, 6, 8]) # 通过字典创建Series s = pd.Series({'a': 1, 'b': 2, 'c': 3}) ``` 2. DataFrame DataFrame是一种二维表格数据结构,由一组数据和一组行索引和列索引组成。DataFrame的创建方式有很多种,最常用的是通过字典创建。例如: ```python import pandas as pd data = {'name': ['Tom', 'Jerry', 'Mike'], 'age': [18, 20, 22], 'gender': ['M', 'M', 'F']} df = pd.DataFrame(data) ``` 二、Pandas的基本操作 1. 数据读取 Pandas可以读取多种格式的数据文件,如CSV、Excel、SQL等。常用的读取CSV文件的方式如下: ```python import pandas as pd df = pd.read_csv('data.csv') ``` 2. 数据预处理 数据预处理是数据挖掘中非常重要的一部分,Pandas提供了很多方便的函数和方法来进行数据清洗和转换。常用的数据预处理函数和方法有: - 处理缺失值 ```python # 判断是否存在缺失值 df.isnull() # 删除缺失值 df.dropna() # 填充缺失值 df.fillna(value) ``` - 处理重复值 ```python # 删除重复值 df.drop_duplicates() ``` - 数据转换 ```python # 数据类型转换 df.astype() # 数据替换 df.replace() ``` 3. 数据分析 Pandas提供了各种数据分析和处理的方法和函数,常用的包括: - 统计函数 ```python # 计算平均值 df.mean() # 计算标准差 df.std() # 计算最大值和最小值 df.max(), df.min() ``` - 排序 ```python # 按照某列排序 df.sort_values(by='column_name') ``` - 数据聚合 ```python # 对某列数据进行分组求和 df.groupby('column_name').sum() ``` 以上是Pandas模块的基础内容,还有很多高级用法和技巧需要进一步学习和掌握。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值