一、什么是Panel

  • Series:包含一维索引的一组数据
  • DataFrame:包含index和columns两个轴
  • Panel(面板):一种三维数据容器

一个Panel对象由3个轴构成:

  • items-------->axis=0:每个项目对应于内部包含的DataFrame
  • major_axis--->axis=1:每个DataFrame的索引(行)
  • minor_axis--->axis=2:每个DataFrame的列

二、Panel的创建

  pd.Panel(data,items,major_axis,minor_axis,dtype,copy)

参数 说明
data 数据采取各种形式,如:ndarray、Series、列表、字典和另外一个DataFrame
items 每个项目对应于内部包含的DataFrame
major_axis 每个DataFrame的索引(行)
minor_axis 每个DataFrame的列
dtype 每列的数据类型
copy 复制数据,默认值为False
>>> pnl = pd.Panel([[[10000,20000],[20000,30000],[40000,50000]],[[2,1],[0,0],[3,4]]],
items=['营业额','出差次数'],major_axis=['Jan','Feb','Mar'],minor_axis=['Mary','Jack'])
>>> pnl
<class 'pandas.core.panel.Panel'>
Dimensions: 2 (items) x 3 (major_axis) x 2 (minor_axis)
Items axis: 营业额 to 出差次数
Major_axis axis: Jan to Mar
Minor_axis axis: Mary to Jack >>> pnl['营业额']
Mary Jack
Jan 10000 20000
Feb 20000 30000
Mar 40000 50000 >>> type(pnl['营业额'])
<class 'pandas.core.frame.DataFrame'> 

三、Panel的转换

  通过to_frame()将Panel转转成一个“堆积式”的DataFrame(stacked DataFrame),此时Paenl的形式与索引都将方便许多。

>>> pnl.to_frame()
营业额 出差次数
major minor
Jan Mary 10000 2
Jack 20000 1
Feb Mary 20000 0
Jack 30000 0
Mar Mary 40000 3
Jack 50000 4

  

3-Pandas之什么是Panel?的更多相关文章

  1. pd.Panel转化成json,然后再还原回来

    在使用tornado的write时候有一个需求,是将panel转化成json;而接收端再将json还原成panel格式. 尝试了很久,终于实现了. panel1 =pd.Panel({"on ...

  2. Python数据分析之Pandas操作大全

    从头到尾都是手码的,文中的所有示例也都是在Pycharm中运行过的,自己整理笔记的最大好处在于可以按照自己的思路来构建矿建,等到将来在需要的时候能够以最快的速度看懂并应用=_= 注:为方便表述,本章设 ...

  3. 第01章 准备工作.md

    第1章 准备工作 1.1 本书的内容 本书讲的是利用Python进行数据控制.处理.整理.分析等方面的具体细节和基本要点.我的目标是介绍Python编程和用于数据处理的库和工具环境,掌握这些,可以让你 ...

  4. zipline整体架构

    在这里可以看出,zipline由下面几个主要的部分构成 名称 说明 TradingAlgorithm 量化策略的抽象,既可以通过初始化传入构造上参数的方式,也可以通过继承的方式构造,其中zipline ...

  5. python数据分析01准备工作

    第1章 准备工作 1.1 本书的内容 本书讲的是利用Python进行数据控制.处理.整理.分析等方面的具体细节和基本要点.我的目标是介绍Python编程和用于数据处理的库和工具环境,掌握这些,可以让你 ...

  6. pandas.Panel数据

    from pandas import Panel, DataFrame import numpy as np dd = {} for i in range(1, 3): name = 'X' + st ...

  7. pandas 使用panel 报错 Panel is deprecated and will be removed in a future version.

    Panel is deprecated and will be removed in a future version.The recommended way to represent these t ...

  8. Pandas面板(Panel)

    面板(Panel)是3D容器的数据.面板数据一词来源于计量经济学,部分源于名称:Pandas - pan(el)-da(ta)-s. 3轴(axis)这个名称旨在给出描述涉及面板数据的操作的一些语义. ...

  9. Python Pandas -- Panel

    Pandas 中一维 series, 二维DataFrame, 三维Panel class pandas.Panel(data=None, items=None, major_axis=None, m ...

  10. Pandas | 04 Panel 面板

    面板(Panel)是3D容器的数据.面板数据一词来源于计量经济学,部分源于名称:Pandas - pan(el)-da(ta)-s. 3轴(axis)这个名称旨在给出描述涉及面板数据的操作的一些语义. ...

随机推荐

  1. springboot Jar包开启远程调试

    jar 正常启动 java -jar rest-demo-0.0.1-SNAPSHOT.jar 开启DEBUG模式需追加参数 java -Xdebug -Xrunjdwp:server=y,trans ...

  2. python数据结构与算法(一)

    1.序列中的N个元素赋值给变量 data = [1,2,3,"string!",["python","php"]] num_1,num_2, ...

  3. 常见的H5移动端Web页面Bug问题解决方案总汇

    解决jquery ajax调用远程接口的跨域问题 首先,接口必须允许远程调用.这是后端或者运维的事情.你必须保证你得到的一个接口是允许远程调用的.否则,就没啥了. $.ajax({ type:'get ...

  4. HTML5全局属性汇总

    局部属性和全局属性 局部属性:有些元素能规定自己的属性,这种属性称为局部属性.比如link元素,它具有的局部属性有href. rel. hreflang. media. type. sizes这六个. ...

  5. appium-1-安装

    1.appium安装 网盘地址,下载之后,一路点就可以了 链接:https://pan.baidu.com/s/1-X_ceUWisbuyosjztakKZw  密码:hxeu 系统变量中新增APPI ...

  6. 什么是electron

    Electron 是什么 定义 Electron是一个能让你使用传统前端技术(Nodejs, Javascript, HTML, CSS)开发一个跨平台桌面应用的框架.这里所说的桌面应用指的是在Win ...

  7. labelImg安装及使用(YOLO标签为例)

    安装: 非常简单. 第一步: cmd中执行 pip install labelImg 我一般会用下面这个 pip install -i https://pypi.tuna.tsinghua.edu.c ...

  8. CSS基础面试题,快来查漏补缺

    本文大部分问题来源:50道CSS基础面试题(附答案),外加一些面经. 我对问题进行了分类整理,并给了自己的回答.大部分知识点都有专题链接(来源于本博客相关文章),用于自己前端CSS部分的查漏补缺.虽作 ...

  9. Xamarin.Android调用百度地图

    下载百度地图API Android SDK 在Visual Studio中创建绑定库(Android)项目 将jar文件添加到Jars文件夹中 生成该项目,如果遇到变量名称之类的问题,可在Transf ...

  10. SpingBoot整合jxls2.0-excel导出—— 列表循环,自定义方法,超链接等

    Java中实现excel导出数据的方法有很多,一般简单的可以通过操作POI进行,但是复杂的excel格式导出如果用POI就显得非常麻烦,本文介绍的jxls2.0完全依据模板进行导出,只需要进行简单的配 ...