- csv,json,html,ms,hdf5,sql等等
常见格式使用
- csv,hdf,json,mysql ,excel
csv 使用
- pd.read_csv(path_or_buf ) 读取csv
- path_or_buf 路径或者buffer
- usecols (读取的列名) 列表形式
- 数据.to_csv(path_or_buf ,columns,index) 写入csv
- path_or_buf 路径
- columns 栏目(列)
- index 是否需要索引 True 需要
hdf5使用
- pd.read_hdf(path_or_buf ,key,mode)
- path_or_buf 路径
- mode : {'r', 'r+', 'a'}, default 'r'
- 数据.to_hdf(path_or_buf )
- 注意:读取写入文件的后缀 *.h5
json 使用
- pd.read_json(path,orient)
- path 字节或者路径
- orient
*
- lines
- typ 默认frame
- 指定转换成的对象类型series或者dataframe
- 数据.to_json()
拓展 推荐使用HDF5文件
- 存储支持压缩
- 读取,存入效率高
- 支持跨平台 hadoop
Pandas 高级处理 缺失值处理
- 基础操作
- np.all()
- np.any()
- pd.fillna()
- pd.dropna()
- data.replace()
- 缺失值处理
- 1.判断缺失值
- np.any(pd.isnull())
- np.any(pd.isnull(movie)) # 里面如果有一个缺失值,就返回True
- np.all(pd.notnull())
- np.all(pd.notnull(movie)) # 里面如果有一个缺失值,就返回False
- 2.处理缺失值
- 数据.dropna()
- 数据.fillna()
- movie[i].fillna(value=movie[i].mean(), inplace=True)
- 数据.replace()
- wis.replace(to_replace="?", value=np.NaN)
Pandas 高级处理 数据离散化
- 为什么要数据离散化
- 什么是数据离散化
- 把一些数据分到某个区间内,使最后用不同的符号或者数字表达
- 数据离散化api
- pd.qcut() -- 把数据大致分为数量相等的基类
- pd.cut() -- 指定一个分组间隔
- 数量统计
- one-hot 编码
- 介绍(哑变量,热独编码)
- 使用
- pd.get_dummies(数据,prefix=“前缀”)
- 数据必须是cut或qcut之后的数据 (存疑)
- pandas.core.series.Series类型
Pandas 高级处理 合并
- 介绍
- 使用:
- pd.concat([数据1,数据2],axis = 1)
- pd.merge()
- left 左表
- right 右表
- on 两个字段
- inner 运算规则 (相同的展示,重复的就多展示一次)
- how 连接方式 inner
Pandas 高级处理 交叉表
- 1.什么是交叉表,透视表
- 2.pd.crosstab()
- 3.对象.pivot_table()
Pandas 高级处理 分组和聚合
- 1.介绍
*
- 2.使用
- 对象.groupby()
- 可以对数据多次分组(传递列表数据)
2.扩展延伸知识
- np.Nan是什么类型
- dataframe 属性
- shape,index,columns,values,tail,head
- python中的值传递技巧
- 可以传递数组,可以传递单个值,
- 可以传递对象,可以传递字符串
- 需要在函数中判断一下,执行什么操作
- pandas 索引
- hdf 文件
- Hierarchical Data Format,可以存储不同类型的图像和数码数据的文件格式,并且可以在不同类型的机器上传输,同时还有统一处理这种文件格式的函数库。大多数普通计算机都支持这种文件格式。
- pandas多维可以拆成series
- zlib使用
- 中位数
- 众数
- mysql 连接查询
3.灵感代办
4.复习内容
- 创建DataFrame
- DataFrame类似numpy的二维数组
- pd.DataFrame(ndarray)
- 可以是字典{key:[],key1:[]} 不能是常量,只能是列表
- shape,index,columns,values,T
- head,tail 获取前几行,后几行
5.学习成果&问题