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同步遍历多个列表的示例

Python同步遍历多个列表的示例

Python的for循环十分灵活,使用for循环我们可以很轻松地遍历一个列表,例如: a_list = ['z', 'c', 1, 5, 'm'] for each in a_lis...

python实现redis三种cas事务操作

cas全称是compare and set,是一种典型的事务操作。 简单的说,事务就是为了存取数据库中同一数据时不破坏操作的隔离性和原子性,从而保证数据的一致性。 一般数据库,比如M...

浅析python中的迭代与迭代对象

什么是python的迭代 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)。 (在Python中,迭代是...

python 打印直角三角形,等边三角形,菱形,正方形的代码

三角形 等腰直角三角形1 2.7 #coding:utf-8 rows = int(raw_input('输入列数: ')) i = j = k = 1 #声明变量,i用于控制外层循...

简单了解python中的与或非运算

简单了解python中的与或非运算

真的很重要,栽了个跟头!!!(虽然以前好像知道。。。) print(True or False and False) print((True or False) and False)...