首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Python数据分析pandas之多层高维索引

DataFrame多层索引 多层索引简介 众所周知Pandas的Series和DataFrame存放的是一维和二维数组,那么想存放多维数组就得通过多层索引来实现。...初始化多层索引 通过from_tuples元组生成 多层索引通过元组方式创建,这种方式索引的key存放在元组内。多层索引由levels和codes构成。...注: 1 这里多维索引的levels是元组的元素的值。 2 这里多维索引的codes是对元组元素进行的编码,如0,1,2等。 #比如这里定义了关于学生年份、学习周期定义的多层(维)索引。...import pandas as pd index=[['期中','期末'],[2010,2011,2012]] #注意index里数组元素的顺序。...import pandas as pd index=[['期中','期末'],[2010,2011,2012],['A','B']] index = pd.MultiIndex.from_product

2.6K40

盘一盘 Python 系列 4 - Pandas (上)

import pandas as pd Pandas 里面的数据结构是「多维数据表」,学习它可以类比这 NumPy 里的「多维数组」。...1/2/3 维的「多维数据表」分别叫做 Series (系列), DataFrame (数据帧) 和 Panel (面板),和1/2/3 维的「多维数组」的类比关系如下。...对比 NumPy (np) 和 Pandas (pd) 每个维度下的数据结构,不难看出 pd 多维数据表 = np 多维数组 + 描述 其中 Series = 1darray + index DataFrame...上节都是手敲一些数据来创建多维数据表」的,现实中做量化分析时,数据量都会很大,一般都是量化平台中或者下载好的 csv 中直接读取。本节介绍如何量化平台「万矿」中读取数据来创建多维数据表」的。...index + columns + item pd 多维数据表和 np 多维数组之间的类比关系如下图所示。

6.2K52
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    数据科学 IPython 笔记本 7.8 分层索引

    我们以标准导入开始: import pandas as pd import numpy as np 多重索引的序列 让我们首先考虑如何在一维Series中表示二维数据。...我们可以元组创建多重索引,如下所示: index = pd.MultiIndex.from_tuples(index) index ''' MultiIndex(levels=[['California...作为额外维度的MultiIndex 你可能会注意到其他内容:我们可以使用带有索引和列标签的简单DataFrame,来轻松存储相同的数据。事实上,Pandas 的构建具有这种等价关系。...原因很简单:就像我们能够使用多重索引,在一维序列中表示二维数据一样,我们也可以用它在Series或DataFrame中表示更多维的数据。...MultiIndex创建方法 为Series或DataFrame构造多重索引的最简单方法,是简单地将两个或多个索引数组的列表传递给构造器。

    4.2K20

    6种方式创建多层索引

    6种方式创建多层索引MultiIndex pd.MultiIndex即具有多个层次的索引。通过多层次索引,我们就可以操作整个索引组的数据。...本文主要介绍在Pandas创建多层索引的6种方式: pd.MultiIndex.from_arrays():多维数组作为参数,高维指定高层索引,低维指定低层索引。...pd.MultiIndex.from_product():一个可迭代对象的列表作为参数,根据多个可迭代对象元素的笛卡尔积(元素间的两两组合)进行创建索引。...() In [1]: import pandas as pd import numpy as np 通过数组的方式来生成,通常指定的是列表中的元素: In [2]: # 列表元素是字符串和数字 array1...', 27)], ) In [3]: type(m1) # 查看数据类型 通过type函数来查看数据类型,发现的确是:MultiIndex Out[3]: pandas.core.indexes.multi.MultiIndex

    25620

    【原创佳作】介绍Pandas实战中一些高端玩法

    什么是多重/分层索引 多重/分层索引(MultiIndex)可以理解为堆叠的一种索引结构,它的存在为一些相当复杂的数据分析和操作打开了大门,尤其是在处理高纬度数据的时候就显得十分地便利,我们首先来创建带有多重索引的...DataFrame数据集 多重索引的创建 首先在“列”方向上创建多重索引,即我们在调用columns参数时传递两个或者更多的数组,代码如下 df1 = pd.DataFrame(np.random.randint...,代码如下 df = pd.DataFrame(np.random.randint(0, 100, size=(4, 2)), index= [['English'...,分别是 pd.MultiIndex.from_arrays pd.MultiIndex.from_frame pd.MultiIndex.from_tuples pd.MultiIndex.from_product...小编这里就挑其中的一种来为大家演示如何来创建多重索引,代码如下 df2 = pd.DataFrame(np.random.randint(0, 100, size=(4, 2)),

    69010

    科学计算库-Pandas随笔【附网络隐私闲谈】

    pandas 是基于 numpy 数组构建的, 但二者最大的不同是 pandas 是专门为处理表格和混杂数据设计的,比较契合统计分析中的表结构,而 numpy 更适合处理统一的数值数组数据。...pandas数组结构有一维 Series 和二维 DataFrame 。...8.2.2、pandas Series 类型 可以将 Series 类型看作一维数组, 字典类型转为 Series 类型/pandas 一维数组,更适合科学计算 from pandas import...为什么 DataFrame 可以理解成 Series 组成的字典 ? DataFrame 的数据源可以是字典,Series,也可以是 DataFrame,还可以是 numpy 数组。...多级索引 #使用元组创建一个多级索引 index = pd.MultiIndex.from_tuples(index) #将前面创建的pop的索引重置(reindex)为MultiIndex,就会看到层级索引

    2.9K180

    数据分析厉器---pandas入门

    series的创建 Series是一个类似于一维数组的数据结构,它能够保存任何类型的数据,比如整数、字符串、浮点数等,主要由一组数据和与之相关的索引两部分构成。...import pandas as pd import numpy as np 参数: data:传入的数据,可以是ndarray、list等 index:索引,必须是唯一的,且与数据的长度相等。...如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...DataFrame创建 DataFrame是一个类似于二维数组或表格(如excel)的对象,既有行索引,又有列索引 行索引,表明不同行,横向索引,叫index,0轴,axis=0 列索引,表名不同列...,纵向索引,叫columns,1轴,axis=1 pd.DataFrame(np.random.randn(2,3)) 0 1 2 0 -1.130305 -0.276684 -1.390081 1

    69230

    Pandas 2.2 中文官方教程和指南(二十五·二)

    带标签的框架创建 MultiIndex In [64]: df = pd.DataFrame( ....: { ....: "row": [0, 1, 2], ....:...看这里 文件推断数据类型 处理错误行 GH 2886 写入多行索引 CSV 而不写入重复项 读取多个文件以创建单个 DataFrame 将多个文件合并为单个 DataFrame 的最佳方法是逐个读取各个框架...展示了一个 csv 文件中获取数据并按块创建存储的函数,同时进行日期解析。...点击这里查看 文件推断数据类型 处理错误行 GH 2886 写入具有多行索引的 CSV,避免写入重复行 读取多个文件以创建单个 DataFrame 将多个文件合并为单个 DataFrame 的最佳方法是逐个读取各个框架...,pandas 可以轻松接受 NumPy 记录数组

    17600

    系统性的学会 Pandas, 看这一篇就够了!

    如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。 columns:列标签。如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...通过已有数据创建 举例一: pd.DataFrame(np.random.randn(2,3)) 结果: 举例二:创建学生成绩表 使用np创建数组显示方式,比较两者的区别。...1.2.3 MultiIndex与Panel (1)MultiIndex MultiIndex是三维的数据结构; 多级索引(也称层次化索引)是pandas的重要功能,可以在Series、DataFrame...版本0.20.0开始弃用:推荐的用于表示3D数据的方法是通过DataFrame上的MultiIndex方法。

    4.1K20

    系统性的学会 Pandas, 看这一篇就够了!

    如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。 columns:列标签。如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...通过已有数据创建 举例一: pd.DataFrame(np.random.randn(2,3)) 结果: 举例二:创建学生成绩表 使用np创建数组显示方式,比较两者的区别。...1.2.3 MultiIndex与Panel (1)MultiIndex MultiIndex是三维的数据结构; 多级索引(也称层次化索引)是pandas的重要功能,可以在Series、DataFrame...版本0.20.0开始弃用:推荐的用于表示3D数据的方法是通过DataFrame上的MultiIndex方法。

    4.6K30

    系统性总结了 Pandas 所有知识点

    如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。 columns:列标签。如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...举例一:通过已有数据创建 pd.DataFrame(np.random.randn(2,3)) 结果: 举例二:创建学生成绩表 使用np创建数组显示方式,比较两者的区别。...1.2.3 MultiIndex与Panel 1、MultiIndex MultiIndex是三维的数据结构; 多级索引(也称层次化索引)是pandas的重要功能,可以在Series、DataFrame...版本0.20.0开始弃用:推荐的用于表示3D数据的方法是通过DataFrame上的MultiIndex方法。

    3.3K20

    系统性的学会 Pandas, 看这一篇就够了!

    如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。 columns:列标签。如果没有传入索引参数,则默认会自动创建一个0-N的整数索引。...通过已有数据创建 举例一: pd.DataFrame(np.random.randn(2,3)) 结果: 举例二:创建学生成绩表 使用np创建数组显示方式,比较两者的区别。...1.2.3 MultiIndex与Panel (1)MultiIndex MultiIndex是三维的数据结构; 多级索引(也称层次化索引)是pandas的重要功能,可以在Series、DataFrame...版本0.20.0开始弃用:推荐的用于表示3D数据的方法是通过DataFrame上的MultiIndex方法。

    4.3K40
    领券