如下所示:
date | 20170307 | 20170308 |
iphone4 | 2 | 0 |
iphone5 | 2 | 1 |
iphone6 | 0 | 1 |
先生成DF数据。
1
2
3
4
5
|
>>> 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 |
1
2
3
4
5
6
7
|
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 |
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() 按日期分多列数据的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/uvyoaa/article/details/62430400