Pandas使用方法
一、简介
pandas是一个强大的Python数据分析的工具包,它是基于Numpy构建的,正因pandas的出现,让Python语言也成为使用最广泛而且强大的数据分析环境之一。
Pandas的主要功能:
- 具备对其功能的数据结构DataFrame,Series
- 集成时间序列功能
- 提供丰富的数学运算和操作
- 灵活处理缺失数据
安装方法:
pip install pandas
引用方法:
import pandas as pd
二、Series
Series是一种类似于一维数组的对象,由一组数据和一组与之相关的数据标签(索引)组成
1.创建方法
2.缺失数据
dropna() # 过滤掉值为NaN的行 fillna() # 填充缺失数据 isnull() # 返回布尔数组,缺失值对应为True notnull() # 返回布尔数组,缺失值对应为False
3.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)等
loc属性 # 以标签解释 iloc属性 # 以下标解释
4.Series数据对齐
pandas在运算时,会按索引进行对齐然后计算。如果存在不同的索引,则结果的索引是两个操作数索引的并集。
sr1 = pd.Series([12,23,34], index=[‘c‘,‘a‘,‘d‘]) sr2 = pd.Series([11,20,10], index=[‘d‘,‘c‘,‘a‘,]) sr1 + sr2 运行结果: a 33 c 32 d 45 dtype: int64 # 可以通过这种索引对齐直接将两个Series对象进行运算 sr3 = pd.Series([11,20,10,14], index=[‘d‘,‘c‘,‘a‘,‘b‘]) sr1 + sr3 运行结果: a 33.0 b NaN c 32.0 d 45.0 dtype: float64 # sr1 和 sr3的索引不一致,所以最终的运行会发现b索引对应的值无法运算,就返回了NaN,一个缺失值
将两个Series对象相加时将缺失值设为0:
sr1 = pd.Series([12,23,34], index=[‘c‘,‘a‘,‘d‘]) sr3 = pd.Series([11,20,10,14], index=[‘d‘,‘c‘,‘a‘,‘b‘]) sr1.add(sr3,fill_value=0) 运行结果: a 33.0 b 14.0 c 32.0 d 45.0 dtype: float64 # 将缺失值设为0,所以最后算出来b索引对应的结果为14
三、DataFrame
DataFrame是一个表格型的数据结构,相当于是一个二维数组,含有一组有序的列。他可以被看做是由Series组成的字典,并且共用一个索引。
1.创建方法
2.查看数据
index 获取行索引 columns 获取列索引 T 转置 columns 获取列索引 values 获取值索引
3.获取数据的方式
df = pd.read_csv(‘需要读取的文件‘) df.head(‘需要查看的数量‘) df.to_csv(‘保存的文件‘)