pandas目录

1 简介

  自 Pandas 0.25 版本后, Panel 结构已经被废弃。

pd.__version__  #查看pandas版本
#'1.2.4'
#或者
pd.show_versions()

  Panel 结构也称“面板结构”,源自于 Panel Data 一词,翻译为“面板数据”。

  Panel 是三维数据结构,有三个轴,分别是:

  • items(0 轴):axis =0,Panel 中的每个 items 都对应一个 DataFrame。
  • major_axis(1 轴):axis=1,用来描述每个 DataFrame 的行索引。
  • minor_axis(2 轴):axis=2,用来描述每个 DataFrame 的列索引。

2 创建Panel 对象

  创建 Panel 对象有两种方式

  • 使用 nadarry 数组创建,
  • 使用 DataFrame 对象创建。

2.1 创建空的 Panel 对象

import pandas as pd
p = pd.Panel()
print(p)

  输出结果:

<class 'pandas.core.panel.Panel'>
Dimensions: 0 (items) x 0 (major_axis) x 0 (minor_axis)
Items axis: None
Major_axis axis: None
Minor_axis axis: None

2.2 ndarray三维数组创建

import pandas as pd
import numpy as np
#返回均匀分布的随机样本值位于[0,1)之间
data = np.random.rand(2,4,5)
p = pd.Panel(data)
print (p)

  输出结果:

<class 'pandas.core.panel.Panel'>
Dimensions: 2 (items) x 4 (major_axis) x 5 (minor_axis)
Items axis: 0 to 1
Major_axis axis: 0 to 3
Minor_axis axis: 0 to 4

2.3 DataFrame创建

  使用 DataFrame 创建一个 Panel :

import pandas as pd
import numpy as np
data = {'Item1' : pd.DataFrame(np.random.randn(4, 3)),
'Item2' : pd.DataFrame(np.random.randn(4, 2))}
p = pd.Panel(data)
print(p)

  输出结果:

Dimensions: 2 (items) x 4 (major_axis) x 3 (minor_axis)
Items axis: Item1 to Item2
Major_axis axis: 0 to 3
Minor_axis axis: 0 to 2

3 Panel中选取数据

  使用 Panel 的三个轴来实现,也就是 itemsmajor_axisminor_axis。下面介绍其中一种:

3.1 使用 items选取数据

  示例如下:

import pandas as pd
import numpy as np
data = {'Item1':pd.DataFrame(np.random.randn(4, 3)),
'Item2':pd.DataFrame(np.random.randn(4, 2))}
p = pd.Panel(data)
print(p['Item1'])

  输出结果:

            0          1          2
0 0.488224 -0.128637 0.930817
1 0.417497 0.896681 0.576657
2 -2.775266 0.571668 0.290082
3 -0.400538 -0.144234 1.110535

  上述示例中 data,包含了两个数据项,我们选择了 Item1,输出结果是 4 行 3 列的 DataFrame,其行、列索引分别对应 major_axis 和 minor_axis。

Lesson5——Pandas Panel三维数据结构的更多相关文章

  1. Pandas三个数据结构

    系列(Series) 数据帧(DataFrame) 面板(Panel) 这些数据结构构建在Numpy数组之上,这意味着它们很快. 考虑这些数据结构的最好方法是,较高维数据结构是其较低维数据结构的容器. ...

  2. Python Pandas -- Panel

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

  3. pandas中的数据结构-DataFrame

    pandas中的数据结构-DataFrame DataFrame是什么? 表格型的数据结构 DataFrame 是一个表格型的数据类型,每列值类型可以不同 DataFrame 既有行索引.也有列索引 ...

  4. Python数据分析 Pandas模块 基础数据结构与简介(一)

    pandas 入门 简介 pandas 组成 = 数据面板 + 数据分析工具 poandas 把数组分为3类 一维矩阵:Series 把ndarray强大在可以存储任意数据类型可以专门处理时间数据 二 ...

  5. pandas.Panel数据

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

  6. pandas数据分析(数据结构)

    本文主要从以下两个方向对pandas的数据结构进行展开,分别为Series和DataFrame(对应的分别是系列与numpy中的一维数组和二维数组) 1.首先从Series讲起,主要介绍Series的 ...

  7. Python数据分析 Pandas模块 基础数据结构与简介(二)

    重点方法 分组:groupby('列名') groupby(['列1'],['列2'........]) 分组步骤: (spiltting)拆分 按照一些规则将数据分为不同的组 (Applying)申 ...

  8. pandas知识点(数据结构)

    1.Series 生成一维数组,左边索引,右边值: In [3]: obj = Series([1,2,3,4,5]) In [4]: obj Out[4]: 0 1 1 2 2 3 3 4 4 5 ...

  9. pandas.DataFrame.astype数据结构转换

    网易云课堂该课程链接地址 https://study.163.com/course/courseMain.htm?share=2&shareId=400000000398149&cou ...

随机推荐

  1. 【LeetCode】583. Delete Operation for Two Strings 解题报告(Python & C++)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  2. python学习第一天:window安装python开发环境完整篇

    我是跟着廖雪峰老师的的博客来一步一步来进行学习和实践后记录下来的,讲的非常地详细,推荐大家一起学习https://www.liaoxuefeng.com/wiki/0014316089557264a6 ...

  3. element 表格行内进行编辑

    <template> <div class="process_manage"> <el-card class="box-card" ...

  4. 编写Java程序,在维护英雄数据的业务过程中复用数据库操作封装类

    返回本章节 返回作业目录 需求说明: 继续完善英雄信息系统,将HeroAccess类中数据库连接相关代码独立出来,并将其封闭成数据库操作工具类DbConnection,便于管理和代码复用. 在Hero ...

  5. 编写Java程序,使用PreparedState实现对英雄数据的新增、删除和更新

    返回本章节 返回作业目录 需求说明: 使用PreparedState实现对英雄数据的新增.删除和更新 英雄(t_hero)表结构 列名(含义) 数据类型 约束 id (序号) int 主键,自动增长 ...

  6. 微擎框架中 uid、acid、uniacid 之间的关系

    首先,在创建应用的时候,会在表 uni_account 中插入一条应用数据,其中 default_acid = 0 ,返回值为该表的主键,作为 $uniacid . 然后,会在表 account 中插 ...

  7. Launch agent by connecting it to the master

    Jenkins Node 是 Windows, Jenkins Server 在 Linux C:\JenkinsAgent\start_jenkins_agent.bat java -DSoftKi ...

  8. Oracle 报 ORA-00054资源正忙的解决办法

    oracle之报错:ORA-00054: 资源正忙,要求指定 NOWAIT 问题如下: SQL> conn scott/tiger@vm_database Connected to Oracle ...

  9. gradle学习(一)

    projects和tasks 任何一个Gradle构建都是由一个或者多个project组成 每个project都有多个tasks构成 每个task都代表了构建执行过程中的一个原子性操作.例如 编译 打 ...

  10. 第10组 Beta冲刺 (1/5)(组长)

    1.1基本情况 ·队名:今晚不睡觉 ·组长博客:https://www.cnblogs.com/cpandbb/p/14012521.html ·作业博客:https://edu.cnblogs.co ...