课程名称:构建数据分析工程师能力模型,实战八大企业级项目
课程章节:2-5 数据探索工具-Pandas
课程讲师:fish
课程内容:
Pandas的功能概述:
Pandas是构造于Numpy基础之上,兼具Numpy高性能的数组计算功能以及电子表格和关系型数据的灵活处理能力。
Pandas提供了复杂精细的索引功能,可以更为便捷的完成索引、切片、组合以及选取数字子集等数据处理的操作。
Pandas包含了Services序列和DataFrame(数据框或数据帧)两种最为常用的数据结构类型,使得Python进行数据处理变得非常快速和简单。
Pandas最核心的结构就是对DataFrame的处理。
DataFrame结构:
DataFrame是一种二维的结构,可以将其想象为一种excel工作表,如下图所示:
Series结构
Series是带索引的一维数组。
Series对象的两个重要属性:index(索引)和values(数据值)。
DataFrame 的任意一行或任意一列就是一个Series 对象。
DataFrame包含Series对象。
数据合并
1.轴向连接:
pd.concat(), axis = 0 横向轴
pd.concat(), axis=1 横向轴
pd.concat()函数的常用参数
axis:默认值为0,轴向连接所沿的轴。
objs:需要连接的对象的列表。
ignore_index:布尔值,默认为False,为True则不适用连接轴上的索引值,生成的轴被标记为:0,…,n-1
keys:序列,默认为None。使用该序列构建层次化索引,且该索引在最外层。
join:{‘inner’,‘outer’},默认为outer,指定处理其他轴上的索引,‘outer’ 表示取并集,'inner’表示取交集。
数据融合——pd.merge()
也是将多个表进行连接,拼接融合的一种方式,这种拼接方式和之前的拼接方式有所不同,concat是将数据A,B拼接到一起,merge需要考虑数据融合。
pd.merge()中包含的常用参数:
left:参与合并的左侧的DataFrame。
right:参与合并的右侧的DataFrame。
how:{‘left’,‘right’,‘outer’,’inner‘},默认为inner。
on:用于连接的别名,必须包含在左右两个DataFrame中。
left_on:左侧DataFrame中作为连接键的列。
right_on:右侧DataFrame中作为连接键的列。
left_index:{True,False},将左侧的行索引用作其连接键。
right_index:{True,False},将右侧的行索引用作其连接键。
suffiex:字符串值元组,用于追加到重叠列名的末尾,默认(’_x‘,’_y’)。
数据转换
利用函数或映射进行数据转换。
可以将自己定义的或其他包提供的函数用在Pandas对象上以实现批量修改。
实现数据转换的常用方法:applymap和map实例方法。
例:生成一个指标变量indicator,如果取值为0,表示“load_status=Fully Paid”,如果取值为1,表示“load_status = Charged Off”
如果我们需要将数据按照一定的映射关系进行替换,则可以选择使用replace方法,将工作年限中的“10+years”替换为high
课程收获
在昨天学习Python的高级用法以及Numpy之后,今天又接触到了新的数据处理工具——Pandas,帮助我提升了对二维数组创建,导出的能力,解决了openpyxl在excel表导入导出时复杂的逻辑,精简代码结构,提升代码处理效率,收获颇多,感谢老师带来的对Pandas系统的讲解。
共同学习,写下你的评论
评论加载中...
作者其他优质文章