pandas pivot_table() 按日期分多列数据的方法

yipeiwu_com6年前Python基础

如下所示:

date 20170307 20170308
iphone4 2 0
iphone5 2 1
iphone6 0 1

先生成DF数据。

>>> df = pd.DataFrame.from_dict([['ip4','20170307',1],['ip4','20170307',1],['ip5','20170307',1],['ip5','20170307',1],['ip6','20170308',1],['ip5','20170308',1]])

>>> df.columns=['type','date','num']

>>>df
 type   date num
0 ip4 20170307  1
1 ip4 20170307  1
2 ip5 20170307  1
3 ip5 20170307  1
4 ip6 20170308  1
5 ip5 20170308  1
>>> pd.pivot_table(df,values='num',rows=['type'],cols=['date'],aggfunc=np.sum).fillna(0)

操作一下就是实现结果。

注:这个函数的参数形式在0.13.x版本里有效,其他版本请参考相应文档。

从0.14.0开始,参数形式升级成pd.pivot_table(df,values='num',index=['type'],columns=['date'],aggfunc=np.sum).fillna(0)

以上这篇pandas pivot_table() 按日期分多列数据的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

解决python中无法自动补全代码的问题

自已理解自我总结出来的方法,供自己以后使用 #coding:utf-8 from cv2 import * #这里表示让cv2的智能提示功能可用,但是这句话却没有导入cv2模块,不...

PyQt5组件读取参数的实例

1.QLineEdit QLineEdit.text() #输出str类型 2.QCheckBox QCheckBox.checkState() #状态 选定: int(QCh...

剖析Python的Twisted框架的核心特性

一. reactor twisted的核心是reactor,而提到reactor不可避免的是同步/异步,阻塞/非阻塞,在Dave的第一章概念性介绍中,对同步/异步的界限有点模糊,关于同步...

python引用(import)某个模块提示没找到对应模块的解决方法

python引用(import)某个模块提示没找到对应模块的解决方法

自己检查了很多遍,自己写的每错,但是还是报没有找到对应python模块。目录结构如下图所示: __init__.py这个文件需要引入models下的todo_kanban.py文件。_...

python的Template使用指南

Template无疑是一个好东西,可以将字符串的格式固定下来,重复利用。同时Template也可以让开发人员可以分别考虑字符串的格式和其内容了,无形中减轻了开发人员的压力。 Templa...