【pandas 基本操作:数据重塑】

pandas 基本操作

第一章 数据清洗
第二章 数据合并
第三章 数据重塑
第四章 数据转换



前言

数据清洗是一项复杂且繁琐的工作,同时也是整个数据分析过程中最为重要的环节。

数据清洗的目的在于提高数据质量,将脏数据清洗干净,使原数据具有完整性唯一性权威性合法性一致性等特点

脏数据在这里指的是对数据分析没有实际意义格式非法不在指定范围内的数据。


1. 重塑层次化索引

Pandas中重塑层次化索引的操作主要是stack()方法和unstack()方法,前者是将数据的列“旋转”为行,后者是将数据的行“旋转”为列
stack()方法可以将数据的列索引转换为行索引

DataFrame.stack(level=-1, dropna=True)
  • level-1表示操作内层索引。若设为0,表示操作外层索引,默认为-1
  • dropna:表示是否将旋转后的缺失值删除,若设为True,则表示自动过滤缺失值,设置为False则相反。

现在有一个DataFrame类对象df,如果希望将它重塑为一个具有两层索引结构的对象result,也就是说将列索引转换成内层行索引,则重塑前后的效果如下图所示。
在这里插入图片描述

unstack()方法可以将数据的行索引转换为列索引

DataFrame.unstack(level=-1, fill_value=None)
  • level:默认为-1,表示操作内层索引0表示操作外层索引
  • fill_value:若产生了缺失值,则可以设置这个参数用来替换NaN

2. 轴向旋转

某件商品的价格在非活动期间为50元,而在活动期间商品的价格为30元,这就造成同一件商品在不同时间对应不同的价格。

在这里插入图片描述

同一款商品的在活动前后的价格无法很直观地看出来。

我们可以将商品的名称作为列索引,出售日期作为行索引,价格作为表格中的数据,此时每一行展示了同一日期不同手机品牌的价格。
在这里插入图片描述

通过表格可以直观地看出活动前后的价格浮动
在Pandas中pivot()方法提供了这样的功能,它会根据给定的行或列索引重新组织一个DataFrame对象。

pivot(index=None, columns=None, values=None)
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值