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

yipeiwu_com5年前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设计】。

相关文章

windows下添加Python环境变量的方法汇总

如果安装的时候没有选择Add Python.exe to Path 导致在命令提示符下执行python 提示 'python' 不是内部或外部命令,也不是可运行的程序或批处理文件。 可...

Python设计模式之简单工厂模式实例详解

Python设计模式之简单工厂模式实例详解

本文实例讲述了Python设计模式之简单工厂模式。分享给大家供大家参考,具体如下: 简单工厂模式(Simple Factory Pattern):是通过专门定义一个类来负责创建其他类的实...

python 进程 进程池 进程间通信实现解析

1.python 中创建进程的两种方式: from multiprocessing import Process import time def test_(): print '...

Python3 无重复字符的最长子串的实现

Python3 无重复字符的最长子串的实现

题目: 给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度。 示例: 示例 1: 输入: “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”...

python线程、进程和协程详解

引言 解释器环境:python3.5.1 我们都知道python网络编程的两大必学模块socket和socketserver,其中的socketserver是一个支持IO多路复用和多...