一、pandas
1.pandas简介
Pandas是Python里分析结构化数据的工具集
基础是 numpy:高性能矩阵运算
图形库 matplotlib:提供数据可视化
1).pandas能做什么
结构化数据分析
数据挖掘
2).ipython简介
3).python命令行与ipython命令行的区别
# 显示数据可读性强
import numpy as np
from numpy.random import randn
data = {i:randn(i) for i in range(6)}
data
Out[5]:
{0: array([], dtype=float64),
1: array([-0.27834191]),
2: array([-0.39810411, 1.51621473]),
3: array([ 0.04883958, -0.22957738, -0.40316668]),
4: array([-0.01699721, -1.09906238, -1.45676746, -0.90384311]),
5: array([ 0.41730456, -0.91479429, -0.90714327, 1.37142739, 0.17569011])}
# 按Tab键命令补全
# shell命令
# 显示当前目录
pwd
Out[6]: 'D:\\PycharmProjects\\MyTest'
# 切换目录
cd D:\\PycharmProjects
D:\PycharmProjects
# 魔术命令
%run 命令
%timeit 命令
%quickref 命令 显示快速参考文档
%magic显示魔术命令列表和文档
2.Pandas核心数据结构创建
1)Series创建
Series是一维带标签的数组,数组里可以放任意的数据(整数,浮点数,字符串,Python Object)
Series数据结构表示一个行或一个列的数据 有一个默认的整数索引
基本格式:s=pd.Series(data,index=index)
其中, index是一个列表,用来作为数据的标签。data可以是不同的数据类型:Python字典,ndarray对象,一个标量值。
2)DataFrame创建
DataFrame是二维带行标签和列标签的数组,可以是Excel表格、SQL数据库的表格、Series对象字典。它是Pandas中最常用的数据结构。
基本格式:df=pd.DataFrame(data,index=index,columns=columns)
其中,index是行标签,columns是列标签,data可以为:一维numpy数组、list和Series构成的字典,二维numpy数组,一个Series,DataFrame对象
通过传递带有日期时间索引和带标签的列的numpy数组来创建二维数组
通过传递字典对象来创建二维数组
结果的列DataFrame具有不同的 dtype
3.查看数据
1)head查看框架顶部 tail查看框架底部行
2)显示行索引与列索引
3)显示值—numpy数组
NumPy数组对整个数组具有一个dtype,而pandas DataFrames每列具有一个dtype;DataFrames有多个dtypes时,DataFrames.to_numpy相对昂贵。
4)显示数据整体情况—显示数据的快速统计摘要
5)数据转置
6)通过列标签来排序(默认升序)axis=1
7)通过行标签来排序axis=0
8)按值排序
9)查看某一列的数据
df.A
4.选择数据
1)选择一个单列,产生一个Series,等于df.A
2)选择行
对行进行切片
行标签
比较
效率比较高 因为不用判断是位置还是标签
3)通过标签在多轴(行列)上选择
4)减少访问对象尺寸
5)获得值
6)快速访问值—插入原生数据结构
7)通过位置来选择
选择某行
选择某行与某列
选择某几列所有的行
访问特定元素
快速访问特定元素
时间对比
8)布尔索引
1.使用单列的值选择数据
2.从满足布尔条件的DataFrame中选择值
使用isin过滤方法
9)修改数据
修改某个元素
直接修改一列或一行元素
10)copy()