首页 > 其他分享 >Pandas库学习笔记(4)---Pandas Panel

Pandas库学习笔记(4)---Pandas Panel

时间:2024-02-04 10:12:12浏览次数:24  
标签:DataFrame --- pd np Panel data Pandas axis

Pandas Panel

   Pandas Panel基本操作

Panel数据3D容器. 术语 Panel data 源自计量经济学,名称来之于pandas − pan(el)-da(ta)-s.

3个轴的名称描述如下- −

  • items − 轴0,每个items都对应一个包含在其中的DataFrame。
  • major_axis − 轴1,它是每个DataFrame的索引(行)。
  • minor_axis − 轴2,它是每个DataFrame的列。

pandas.Panel()

面板可以使用以下构造函数创建- −

 pandas.Panel(data, items, major_axis, minor_axis, dtype, copy)
构造函数的参数如下:
参数 描述
data 数据采用各种形式,例如ndarray,series,map,list,dict,常量以及DataFrame
items axis=0
major_axis axis=1
minor_axis axis=2
dtype 每列的数据类型
copy 复制数据。默认 false

创建 Panel

面板可以使用多种方式创建,例如:


从 ndarrays 创建从 DataFrame的字典创建


从ndarrays创建



 # 创建一个空panel
 import pandas as pd
 import numpy as np
 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

从 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

创建一个空Panel

可以使用Panel构造函数创建一个空面板,如下所示:

 # 创建一个空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

从Panel中查询数据

可以用以下三项从panel中查询数据:

ItemsMajor_axisMinor_axis

用 Items查询

 # 创建一个空panel
 import pandas as pd
 import numpy as np
 data = {
运行结果:

 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

从两个item中查询item1,输出的结果是一个具有4行3列的DataFrame,分别是Major_axis和Minor_axis。

用major_axis查询

可以使用panel.major_axis(index)方法访问数据.

 # 创建一个空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.major_xs(1))
运行结果:

    Item1 Item2
 0 0.417497 0.748412
 1 0.896681 -0.557322
 2 0.576657 NaN

用 minor_axis查询

可以使用panel.minor_axis(index)方法访问数据。

# 创建一个空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.minor_xs(1))
运行结果:

    Item1 Item2
 0 -0.128637 -1.047032
 1 0.896681 -0.557322
 2 0.571668 0.431953
 3 -0.144234 1.302466

 

 































标签:DataFrame,---,pd,np,Panel,data,Pandas,axis
From: https://www.cnblogs.com/WG11/p/18005644

相关文章

  • ABP-VNext 用户权限管理系统实战03---动态api调用并传递token
    一、使用动态api的目的ABP可以自动创建C#API客户端代理来调用远程HTTP服务(RESTAPIS).通过这种方式,你不需要通过 HttpClient 或者其他低级的HTTP功能调用远程服务并获取数据.现在有两个服务:BackgroundJob服务要调用IdentityManagement服务,并在调用时传递token二、集成步骤1、......
  • nginx---防止盗链
    ngx_http_referer_module模块:用来阻止Referer首部无有效值的请求访问,可防止盗链valid_referersnone|blocked|server_names|string...;定义referer首部的合法可用值,不能匹配的将是非法值none:请求报文首部没有referer首部blocked:请求报文有referer首部,但无有效值se......
  • Python elasticsearch-py类库基础用法
    实践环境https://pypi.org/project/elasticsearch/pipinstallelasticsearch==7.6.0离线安装包及依赖包下载地址:https://files.pythonhosted.org/packages/f5/71/45d36a8df68f3ebb098d6861b2c017f3d094538c0fb98fa61d4dc43e69b9/urllib3-1.26.2-py2.py3-none-any.whl#sha256=d8ff9......
  • FastAPI学习-31 FastAPI 如何集成 socket.io
    前言socket.io就是基于websocket封装的一个库,主要特点是能够进行实时的双向通讯,主要应用场景有实时的聊天,数据实时分析,数据传输,文件协同合作。有个socket.io的fastapi-socketio官方库,该库依赖传统的python-socketio库环境准备pipinstallfastapi-socketiofastapi服务端代码......
  • 关于Windows11的优化内容 - 进阶者系列 - 学习者系列文章
          这几天无事,想起上次刚重装的Windows11操作系统,对于系统优化的内容想记录一下,以前没写过相关的博文,这次就做个记录吧。对于Windows11,已经出来几年了,相关的设置啥的也有,就是优化方面的软件和设置也有相关的,这次就把笔者这边所有相关的优化工具软件和脚本啥的一并发布......
  • 【2024-02-01】带病上班
    20:00岁不寒无以知松柏,事不难无以知君子。                                                 ——荀子昨晚睡觉的状态,跟前年阳了的那次感受十分相似,欲睡睡不着。刀片喉......
  • 【2024-02-02】连岳摘抄
    23:59成长的渐进方式很奇怪,向前两步后退一步。成长总会突然加速,但有时你会处于蛰伏期。请记住这一点,温柔地对待自己。                                                 ......
  • 【scikit-learn基础】--『分类模型评估』之评估报告
    分类模型评估时,scikit-learn提供了混淆矩阵和分类报告是两个非常实用且常用的工具。它们为我们提供了详细的信息,帮助我们了解模型的优缺点,从而进一步优化模型。这两个工具之所以单独出来介绍,是因为它们的输出内容特别适合用在模型的评估报告中。1.混淆矩阵混淆矩阵(ConfusionM......
  • 界面控件DevExpress ASP.NET Spreadsheet组件 - 轻松集成电子表格功能!(一)
    DevExpressASP.NETSpreadsheet组件允许您轻松地将电子表格功能合并到任意ASP.NET应用程序,它可以加载、转换和保存工作簿到XLS-XLSx二进制文件格式,还可以导出和导入XLSX、CSV和TXT文件。P.S:DevExpressASP.NETWebForms Controls拥有针对Web表单(包括报表)的110+种UI控件,可利......
  • J-link J-scop 进行可视化数据波形调试
    Step1.软件安装链接:https://pan.baidu.com/s/1TQba9HFmnz30rBAHptrn3w?pwd=kron提取码:kron可能老版本的jlink在安装的时候没有这个软件有需要的可以自己下载一个正常安装即可,安装完成后打开软件Step2.软件使用1.选择芯片2.选择axf文件完成后应该是这个样子的点击......