Pandas--变形

一、长宽表的变形

1.pivot

pivot 是一种典型的长表变宽表的函数
长变宽三要素:
变形后的行索引:index
需要转到列索引的列:columns
以及这些列和行索引对应的数值:values

2.pivot_table

pivot 的使用依赖于唯一性条件,那如果不满足唯一性条件,那么必须通过聚合操作使得相同行列组合对应的多个值变为一个值:pivot_table 来实现,其中的 aggfunc 参数就是使用的聚合函数。

此外, pivot_table 具有边际汇总的功能,可以通过设置 margins=True 来实现

3.melt

宽表转为长表。

4.wide_to_long

列索引中被压缩的一组值对应的列元素包含了交叉列别,如只把其中某个类别的信息压缩则需要使用 wide_to_long 函数。

二、索引的变形

1.stack与unstack

(1)unstack 函数的作用是把行索引转为列索引,主要参数是移动的层号,默认转化最内层,移动到列索引的最内层,同时支持同时转化多个层。
注:在 unstack 中必须保证 被转为列索引的行索引层 和 被保留的行索引层 构成的组合是唯一的。
(2)与 unstack 相反, stack 的作用就是把列索引的层压入行索引,其用法完全类似。

2.聚合与变形的关系

(1)联系:分组聚合操作,由于生成了新的行列索引,因此必然也属于某种特殊的变形操作;
(2)区别:由于聚合之后把原来的多个值变为了一个值,因此 values 的个数产生了变化,这也是分组聚合与变形函数的最大区别

三、其他变形函数

1.crosstab

在默认状态下, crosstab 可以统计元素组合出现的频数,即 count 操作。

但并不推荐使用,因为它能实现的所有功能 pivot_table 都能完成,并且速度更快:
crosstab 的对应位置传入的是具体的序列,而 pivot_table 传入的是被调用表对应的名字。

2.explode

explode 能够对某一列的元素进行纵向的展开,被展开的单元格必须存储 list, tuple, Series, np.ndarray 中的一种类型。

3.get_dummies

get_dummies 是用于特征构建的重要函数之一,其作用是把类别特征转为指示变量。

先写到这里啦 练习还木有来得及做 结课前会抽空做完滴~

参考文献:《joyfulpandas》——Datawhale

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值