《数据分析》课件-任务4.3 数据重塑_第1页
《数据分析》课件-任务4.3 数据重塑_第2页
《数据分析》课件-任务4.3 数据重塑_第3页
《数据分析》课件-任务4.3 数据重塑_第4页
《数据分析》课件-任务4.3 数据重塑_第5页
已阅读5页,还剩12页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

任务4.3数据重塑Python数据分析学习目标及重难点学习目标:了解数据重塑的含义学习重点:数据重塑层次化索引轴向旋转目录学习内容1.重塑层次化索引2.轴向旋转01数据重塑层次化索引1.数据重塑含义在数据处理时,有时需要对数据结构进行重排,称作重塑(Reshape)或轴向旋转(Pivot)。运用层次化索引可以为DataFrame的数据重排提供良好的一致性。

常见的数据层次化结构有两种,如下图:在pandas中提供了实现重塑的两个函数:stack()和unstack()row101row223onetwo列索引行索引表格结构row1row2one0two1one2two3花括号结构2.stack函数stack:将数据的列“旋转”为行语法格式为:DataFrame.stack(level=-1,dropna=True)level:接收int、str、list类型的数据,表示操作内层索引,默认值-1;若设为0,表示操作外层索引。dropna:接收布尔值,表示是否将旋转后的缺失值删除,若设为True,则表示自动过滤缺失值,设置为False则相反。

函数返回值为DataFrame或Series。2.stack函数现在有一个DataFrame类对象df,如果希望将它重塑为一个具有两层索引结构的对象result,也就是说将列索引转换成内层行索引,则重塑前后的效果如下图所示。第1层第2层2.stack函数例如:将一个2行3列的数据表(如下左图)使用stack方法将列转为行,得到一个Series(如下右图):3.unstack函数unstack()方法可以将数据的行索引转换为列索引level:默认为-1,表示操作内层索引,0表示操作外层索引。fill_value:若产生了缺失值,则可以设置这个参数用来替换NaN。DataFrame.unstack(level=-1,fill_value=None)3.unstack函数对于一个层次化索引的Series,可以用unstack将其重排为一个DataFrame(接上一页的例子):3.unstack函数如果在分组中找不到级别值,则unstack操作会引入缺失数据:stack默认会滤除缺失数据:02轴向旋转数据1.轴向旋转某件商品的价格在非活动期间为50元,而在活动期间商品的价格为30元,这就造成同一件商品在不同时间对应不同的价格。同一款商品的在活动前后的价格无法很直观地看出来。1.轴向旋转我们可以将商品的名称作为列索引,出售日期作为行索引,价格作为表格中的数据,此时每一行展示了同一日期不同手机品牌的价格。通过表格可以直观地看出活动前后的价格浮动2.Pivot函数在Pandas中pivot()方法提供了这样的功能,它会根据给定的行或列索引重新组织一个DataFrame对象Index(可选参数):用于创建新DataFrame对象的行索引。Columns(必选参数):用于创建新DataFrame对象的列索引。Values(可选参数):用于填充新DataFrame对象中的值。pivot(index=None,columns=None,values=None)2.Pivot函数代码实例创建出来了一个6行4列的df对象,并且每一列的名称和值都是不一样的(图1)。在调用pivot()函数之后就可以来对这个数据进行整合(图2)。图1图2代码运行完成自后就会输出三列两行的结果,并且在第一列还是有两个索引。这是因为它将原本数据源之中列foo作为了新对象之中的索引,也就是用其作为行号,保留唯一值之后只有

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论