- 简介
- Series
- DataFrame
- 时间对象处理
- 数据分组和聚合
- 其他常用方法
pandas是一个强大的Python数据分析的工具包,它是基于Numpy构建的,正因pandas的出现,让Python语言也成为使用最广泛而且强大的数据分析环境之一。
Pandas的主要功能:
- 具备对其功能的数据结构DataFrame,Series
- 集成时间序列功能
- 提供丰富的数学运算和操作
- 灵活处理缺失数据
安装方法:
pip install pandas
引用方法:
import pandas as pd
Series是一种类似于一维数组的对象,由一组数据和一组与之相关的数据标签(索引)组成
1、创建方法
| 第一种: |
| pd.Series([4,5,6,7,8]) |
| 执行结果: |
| 0 4 |
| 1 5 |
| 2 6 |
| 3 7 |
| 4 8 |
| dtype: int64 |
| |
| ----------------------------------------------- |
| 第二种: |
| pd.Series([4,5,6,7,8],index=['a','b','c','d','e']) |
| 执行结果: |
| a 4 |
| b 5 |
| c 6 |
| d 7 |
| e 8 |
| dtype: int64 |
| |
| ----------------------------------------------- |
| 第三种: |
| pd.Series({"a":1,"b":2}) |
| 执行结果: |
| a 1 |
| b 2 |
| dtype: int64 |
| |
| ----------------------------------------------- |
| 第四种: |
| pd.Series(0,index=['a','b','c']) |
| 执行结果: |
| a 0 |
| b 0 |
| c 0 |
| dtype: int64 |
| |
| ----------------------------------------------- |
对于Series,其实我们可以认为它是一个长度固定且有序的字典,因为它的索引和数据是按位置进行匹配的,像我们会使用字典的上下文,就肯定也会使用Series
缺失数据
- dropna() # 过滤掉值为NaN的行
- fill() # 填充缺失数据
- isnull() # 返回布尔数组,缺失值对应为True
- notnull() # 返回布尔数组,缺失值对应为False
| |
| |
| st = {"sean":18,"yang":19,"bella":20,"cloud":21} |
| obj = pd.Series(st) |
| obj |
| 运行结果: |
| sean 18 |
| yang 19 |
| bella 20 |
| cloud 21 |
| dtype: int64 |
| ------------------------------------------ |
| |
| a = {'sean','yang','cloud','rocky'} |
| ------------------------------------------ |
| |
| obj1 = pd.Series(st,index=a) |
| obj1 |
| |
| |
| rocky NaN |
| cloud 21.0 |
| sean 18.0 |
| yang 19.0 |
| dtype: float64 |
| |
通过上面的代码演示,对于缺失值已经有了一个简单的了解,接下来就来看看如何判断缺失值
| 1、 |
| obj1.isnull() |
| 运行结果: |
| rocky True |
| cloud False |
| sean False |
| yang False |
| dtype: bool |
| |
| 2、 |
| obj1.notnull() |
| 运行结果: |
| rocky False |
| cloud True |
| sean True |
| yang True |
| dtype: bool |
| |
| 3、过滤缺失值 |
| obj1[obj1.notnull()] |
| 运行结果: |
| cloud 21.0 |
| yang 19.0 |
| sean 18.0 |
| dtype: float64 |
Series特性
- 从ndarray创建Series:Series(arr)
- 与标量(数字):sr * 2
- 两个Series运算
- 通用函数:np.ads(sr)
- 布尔值过滤:sr[sr>0]
- 统计函数:mean()、sum()、cumsum()
支持字典的特性:
- 从字典创建Series:Series(dic),
- In运算:’a’in sr、for x in sr
- 键索引:sr[‘a’],sr[[‘a’,’b’,’d’]]
- 键切片:sr[‘a’:’c’]
- 其他函数:get(‘a’,default=0)等
整数索引
pandas当中的整数索引对象可能会让初次接触它的人很懵逼,接下来通过代码演示: