您好,登录后才能下订单哦!
Python数据中长格式如何变为宽格式,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
pivot
pandas使用版本0.22
melt()的逆操作在Pandas中对应为 pivot(),它也是一个设计上的顶层函数,工程位置如下:
Pandas
|
pivot()
它能变形长格式表为宽格式。
pivot英文解释为:axis consisting of a short shaft that supports something that turns 包含短柄的轴,支持物体转动。怎么理解?
图1
图2
图1到图2,就是Pandas中的pivot操作。
函数原型
主要参数:
index 指明哪个列变为新DataFrame的index,注意是哪个,而不是哪些;
columns 指明哪个列变为columns;
values 指明哪些列变为新DataFrame的数据域,如果不指明,则默认除了被指明index和columns的其他列。
上面图1到图2的变换如下,并未指明values参数,其他列全部按照层级罗列。明显地,列变宽了,变为宽格式了。
如果只想获取某一个系列,比如baz系列,执行如下操作:
图2变化为如下:
异常
pivot操作在实际应用中,可能会出现异常,原因是被选为index和columns的交叉点值应该不是唯一值。
如上,[one,A] 取值为1或2,不唯一。因此,调用如下操作,会报异常。
异常如下,
以上就是pivot使用细节,注意到pivot函数是没有聚合功能的。pandas中pivot_table()提供了聚合函数,实现聚合功能。
虽然只是一个简单的函数,但是却能够快速地对数据进行强大的分析。要想用透,需要多思考,尽量应用到实际场景中。
看完上述内容,你们掌握Python数据中长格式如何变为宽格式的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。