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

对pandas数据透视表中不同级别的列进行重新排序

在pandas数据透视表中,可以通过重新排序不同级别的列来改变数据的展示方式。重新排序可以通过使用reorder_levels方法来实现。

reorder_levels方法接受一个整数列表作为参数,用于指定新的列顺序。列表中的整数表示原始列索引的位置,索引从0开始。通过调整整数的顺序,可以重新排列不同级别的列。

下面是一个示例代码:

代码语言:txt
复制
import pandas as pd

# 创建一个示例数据透视表
data = {
    'A': ['foo', 'foo', 'foo', 'foo', 'bar', 'bar', 'bar', 'bar', 'foo', 'foo', 'foo'],
    'B': ['one', 'one', 'two', 'two', 'one', 'one', 'two', 'two', 'one', 'one', 'two'],
    'C': ['small', 'large', 'large', 'small', 'small', 'large', 'small', 'small', 'large', 'small', 'large'],
    'D': [1, 2, 2, 3, 3, 4, 5, 6, 7, 8, 9]
}

df = pd.DataFrame(data)

# 创建数据透视表
pivot_table = df.pivot_table(index=['A', 'B'], columns='C', values='D', aggfunc='sum')

# 打印原始数据透视表
print("原始数据透视表:")
print(pivot_table)

# 重新排序不同级别的列
reordered_pivot_table = pivot_table.reorder_levels([1, 0], axis=1)

# 打印重新排序后的数据透视表
print("重新排序后的数据透视表:")
print(reordered_pivot_table)

输出结果如下:

代码语言:txt
复制
原始数据透视表:
C        large  small
A   B                
bar one    4.0    3.0
    two    NaN    5.0
foo one    2.0    1.0
    two    2.0    3.0
重新排序后的数据透视表:
C        small  large
A   B                
bar one    3.0    4.0
    two    5.0    NaN
foo one    1.0    2.0
    two    3.0    2.0

在这个例子中,原始数据透视表按照'C'列的值进行了分组,并计算了'D'列的总和。通过使用reorder_levels方法,我们将不同级别的列重新排序,将'C'列的'small'和'large'交换位置,得到了重新排序后的数据透视表。

对于pandas数据透视表中不同级别的列进行重新排序,可以使用reorder_levels方法来实现。这样可以改变数据的展示方式,使得不同级别的列按照指定的顺序进行排列。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

无限分类数据进行重新排序(非树形结构)

无限分类查询有很多方式。本文记录的方式是先将所有数据查出来,再使用递归对数据进行排序,并附加层级字段(level)。此方式仅仅对无限数据进行排序,并没有将子内容放入父。 1....在 TP6.0 中使用的 无限分类进行排序,并附加层级字段 ---- <?...CategoryModel::field('id,pid,name') ->order('sort desc') ->select(); $data = $this->_sort($data);//无限分类重新排序...dump($data); } /** * 无限分类递归排序 */ private function _sort($data, $pid = 0, $level = 0) { static $arr...$value['level'] = $level; //把数组放到list $list[] = $value; //把这个节点从数组移除,减少后续递归消耗 unset($array[$key]);

1.5K40

5分钟了解Pandas透视

然而,数据分析的一个重要部分是这些数据进行分组、汇总、聚合和计算统计的过程。 Pandas 数据透视提供了一个强大的工具来使用 python 执行这些分析技术。...如果你是excel用户,那么可能已经熟悉数据透视的概念。Pandas 数据透视的工作方式与 Excel 等电子表格工具数据透视非常相似。...数据透视函数接受一个df,一些参数详细说明了您希望数据采用的形状,并且输出是以数据透视的形式汇总数据。 在下面的文章,我将通过代码示例简要介绍 Pandas 数据透视表工具。...索引指定行分组,指定分组和值,这些值是您要汇总的数值。 用于创建上述数据透视的代码如下所示。在 pivot_table 函数,我们指定要汇总的df,然后是值、索引和的列名。...在下面显示的代码和数据透视,我们按价格从高到低汽车制造商进行排序,为数字添加了适当的格式,并添加了一个覆盖两值的条形图。

1.9K50
  • 快速在Python实现数据透视

    这条推文很有趣,我能理解,因为一开始,它们可能会令人困惑,尤其是在excel。但是不用害怕,数据透视非常棒,在Python,它们非常快速和简单。数据透视数据科学中一种方便的工具。...数据透视是一种对数据进行重新排列或“透视”以总结某些信息的技术。 例如,考虑一个产品销售数据集。其中一可能是“年龄类别”,如年轻、中年和老年。...如果你想要看到每个年龄类别的平均销售额,数据透视将是一个很好的工具。它会给你一个新表格,显示每一每个类别的平均销售额。 让我们来看看一个真实的场景,在这个场景数据透视非常有用。...PART 06 使用Pandas做一个透视 Pandas库是Python任何类型的数据操作和分析的主要工具。...成熟游戏在这些类别很少有暴力元素,青少年游戏也有一些这种类型的暴力元素,但比“E+10”级别的游戏要少。 PART 07 用条形图可视化数据透视 数据透视在几秒钟内就给了我们一些快速的信息。

    3K20

    玩转Pandas透视

    数据透视(Pivot Table)是常用的数据汇总工具,可以通过控制数据的排列灵活地进行数据分析,进而挖掘出数据中最有价值的信息。掌握数据透视,已经成为数据分析从业者必备的一项技能。...在python我们可以通过pandas.pivot_table函数来实现数据透视的功能。...; index是 Values to group by in the rows,也就是透视建立时要根据哪些字段进行分组,我们这里只依据性别分组; values是指哪些字段进行聚合操作,因为我们只关心不同性别下的存活率情况..."pclass"后,现在透视具有二层行索引,一层索引。...仔细观察透视发现,与上面【3】的"添加一个索引",在分组聚合效果上是一样的,都是将每个性别组的成员再次按照客票级别划分为3个小组。

    4K30

    零基础5天入门Python数据分析:第五课

    这个思路可以比对在Excel的操作。 从上,我们可以看到,往表格增加一个是非常简单的,这个其实跟在Excel是非常类似的。 2. 排序数据进行排序经常也是经常需要进行的。...2.1 按照总分排序pandas,可以使用sort_values来对数据进行排序: 如果ignore_index设置为False,则学生这一的左侧的索引就会跟原来的索引一样,例如学生30的索引原来是...排序好的数据,我们可以进行导出: # index=False:这是为了避免将数据的索引也保存到Excel文件 data_save.to_excel('排序好的成绩.xlsx', index=False...有了及格和不及格字段,类似Excel表格透视表功能,pandas也有透视函数: 所谓透视,涉及到的重要参数有:字段(columns),行字段(index),值字段(values),还有就是值字段的计算函数...图示如下: 这个和Excel透视是非常类似的: 不同版本的Excel会略有不同。 4. 成绩的分布 查看某数据的值的分布,这也是常见的分析。

    1.6K30

    Python入门之数据处理——12种有用的Pandas技巧

    翻译:黄念 校对:王方思 小编和大伙一样正在学习Python,在实际数据操作创建、缺失值填充、变量分箱、名义变量重新编码等技术都很实用,如果你这些感兴趣,请看下文: ◆ ◆ ◆ 引言...现在,我们可以填补缺失值并用# 2提到的方法来检查。 #填补缺失值并再次检查缺失值以确认 ? ? # 4–透视 Pandas可以用来创建MS Excel风格的透视。...# 8–数据排序 Pandas允许在多之上轻松排序。可以这样做: ? ? 注:Pandas的“排序”功能现在已不再推荐。我们用“sort_values”代替。...在这里,我定义了一个通用的函数,以字典的方式输入值,使用Pandas“replace”函数来重新进行编码。 ? ? 编码前后计数不变,证明编码成功。。...加载这个文件后,我们可以在每一行上进行迭代,以类型指派数据类型给定义在“type(特征)”的变量名。 ? ? 现在的信用记录被修改为“object”类型,这在Pandas中表示名义变量。

    5K50

    我用Python展示Excel中常用的20个操

    数据排序 说明:按照指定要求对数据排序 Excel 在Excel可以点击排序按钮进行排序,例如将示例数据按照薪资从高到低进行排序可以按照下面的步骤进行 ?...Pandaspandas可以使用sort_values进行排序,使用ascending来控制升降序,例如将示例数据按照薪资从高到低进行排序可以使用df.sort_values("薪资水平",ascending...数据分组 说明:对数据进行分组计算 Excel 在Excel数据进行分组计算需要先需要分组的字段进行排序,之后可以通过点击分类汇总并设置相关参数完成,比如对示例数据的学历进行分组并求不同学历的平均薪资...数据透视 说明:制作数据透视 Excel 数据透视是一个非常强大的工具,在Excel中有现成的工具,只需要选中数据—>点击插入—>数据透视即可生成,并且支持字段的拖取实现不同透视,非常方便,...PandasPandas制作数据透视可以使用pivot_table函数,例如制作地址、学历、薪资的透视pd.pivot_table(df,index=["地址","学历"],values=["

    5.6K10

    Pandas图鉴(一):Pandas vs Numpy

    当用于一般用途时,它们有以下缺点: 不太直观(例如,你将面临到处都是<f8和<U8这样的常数); 与普通的NumPy数组相比,有一些性能问题; 在内存连续存储,所以每增加或删除一都需要对整个数组进行重新分配...1.Sorting 用Pandas排序更有可读性,你可以看到如下: 这里argsort(a[:,1])计算了使a的第二以升序排序的排列方式,然后外部的a[...]相应地重新排列a的行。...2.按columns排序 如果我们需要使用权重按价格打破平局进行排序,那么对于NumPy来说却有些糟糕: 如果选择使用NumPy,我们首先按重量排序,然后再按价格应用第二次排序。...Pandas连接有所有熟悉的 inner, left, right, 和 full outer 连接模式。 6.按分组 数据分析另一个常见的操作是按分组。...7.透视 Pandas最强大的功能之一是 pivot 。它类似于将多维空间投射到一个二维平面。 虽然用NumPy当然可以实现。

    31850

    最全面的Pandas的教程!没有之一!

    交叉选择行和数据 我们可以用 .xs() 方法轻松获取到多级索引某些特定级别的数据。比如,我们需要找到所有 Levels ,Num = 22 的行: ?...分组统计 Pandas 的分组统计功能可以按某一的内容对数据进行分组,并其应用统计函数,比如求和,平均数,中位数,标准差等等… 举例来说,用 .groupby() 方法,我们可以对下面这数据按...排序 如果想要将整个按某一的值进行排序,可以用 .sort_values() : ? 如上所示,表格变成按 col2 的值从小到大排序。...数据透视 在使用 Excel 的时候,你或许已经试过数据透视的功能了。数据透视是一种汇总统计,它展现了原表格数据的汇总统计结果。...Pandas数据透视能自动帮你对数据进行分组、切片、筛选、排序、计数、求和或取平均值,并将结果直观地显示出来。比如,这里有个关于动物的统计: ?

    25.9K64

    数据科学的原理与技巧 三、处理表格数据

    现在让我们使用多分组,来计算每年和每个性别的最流行的名称。 由于数据已按照年和性别的递减顺序排序,因此我们可以定义一个聚合函数,该函数返回每个序列的第一个值。...如果按两分组,则通常可以使用数据透视,以更方便的格式显示数据。...数据透视可以使用一组分组标签,作为结果。 为了透视,使用pd.pivot_table()函数。...我们可以看到baby_pop的Sex索引成为了数据透视。...通过在pandas文档查看绘图,我们了解到pandas将DataFrame的一行绘制为一组条形,并将每显示为不同颜色的条形。 这意味着letter_dist透视版本将具有正确的格式。

    4.6K10

    SQL、Pandas和Spark:如何实现数据透视

    当然,如果说只实现这两个需求还不能完全表达出数据透视与常规的groupby有何区别,所以不妨首先看个例子: 给定经典的titanic数据集,我们需要统计不同性别下的生还人数,则可以进行如下设置: ?...02 Pandas实现数据透视 在三大工具Pandas实现数据透视可能是最为简单且又最能支持自定义操作的工具。...可以明显注意到该函数的4个主要参数: values:哪一进行汇总统计,在此需求即为name字段; index:汇总后以哪一作为行,在此需求即为sex字段; columns:汇总后以哪一作为...(0和1),都是按照字典序排序的结果,这也呼应了Excel关于数据透视的介绍。...04 SQL实现数据透视 这一系列的文章,一般都是将SQL排在首位进行介绍,但本文在介绍数据透视时有意将其在SQL的操作放在最后,这是因为在SQL实现数据透视是相对最为复杂的。

    2.9K30

    利用excel与Pandas完成实现数据透视

    ', columns='品牌', values='数量', fill_value=0) pivot_table方法还支持透视进行统计计算,而且会新建一个来存放计算结果。...图6 统计结果 这个数据透视可以对利润和销售额进行不同的汇总计算,这时候aggfunc是字典类型,例如对销售额计算平均值,利润计算总和,可以这样: pt5 = df.pivot_table(...图12 仅保留汇总数据某些行和 3,使用字段列表排列数据透视数据 数据透视是一个DataFrame,所以可以用sort_values方法来按某排序,示例代码如下: pt = df.pivot_table...4,对数据透视数据进行分组 在Excel还支持对数据透视数据进行分组,例如可以把风扇和空调的数据分为一组来计算,如图14所示。...图14 对数据透视数据进行分组 用Pandas也可以实现类似的统计,示例代码如下: 代码11-9 对数据透视数据进行分组统计 import pandas as pd import xlwings

    2.2K40

    熟练掌握 Pandas 透视数据统计汇总利器

    pivot_table 可以把一个大数据数据,按你指定的"分类键"进行重新排列。...sort="布尔值,是否结果进行排序,默认是 True" ) 代码示例: import pandas as pd # 生成一个数据集 df data = { 'Region':...(Region)卖出的产品(Product),以及当前产品的销售额(Sales),客户质量(Quantity),现在希望每个地区售卖的产品和销售额做一个统计汇总透视。...透视代码实现如下: # Sales 进行求和操作,行索引是Region,索引是各个 Product, # 行和列增加统计 total In [56]: pd.pivot_table(df,...多维度数据透视与总结,透视表功能可以按任意的行列索引对数据进行高效切割与聚合,全方位统计各维度的关键信息。

    37300

    pandas技巧6

    本篇博文主要是之前的几篇关于pandas使用技巧的小结,内容包含: 创建S型或者DF型数据,以及如何查看数据 选择特定的数据 缺失值处理 apply使用 合并和连接 分组groupby机制 重塑reshaping...透视使用 ---- 创建数据 S型数据 import numpy as np import pandas as pd pd.Series([1, 3, 5, np.nan, 6, 89]) #...,inner、outer、right、left on 用于连接的列名,默认是相同的列名 left_on \right_on 左侧、右侧DF中用作连接键的 sort 根据连接键合并后的数据进行排序,默认是...,AB由属性变成行索引 unstack:将数据的行旋转成,AB由行索引变成属性 透视 data: a DataFrame object,要应用透视数据框 values: a column...values是生成的透视数据 index是透视的层次化索引,多个属性使用列表的形式 columns是生成透视属性

    2.6K10

    干货!直观地解释和可视化每个复杂的DataFrame操作

    大多数数据科学家可能会赞扬Pandas进行数据准备的能力,但许多人可能无法利用所有这些能力。...操作数据帧可能很快会成为一项复杂的任务,因此在Pandas的八种技术均提供了说明,可视化,代码和技巧来记住如何做。 ?...Pivot 透视将创建一个新的“透视”,该透视数据的现有投影为新的元素,包括索引,和值。初始DataFrame中将成为索引的,并且这些显示为唯一值,而这两的组合将显示为值。...要记住:从外观上看,堆栈采用的二维性并将堆栈为多级索引。 Unstack 取消堆叠将获取多索引DataFrame并进行堆叠,将指定级别的索引转换为具有相应值的新DataFrame的。...Merge 合并两个DataFrame是在共享的“键”之间按(水平)组合它们。此键允许将合并,即使它们的排序方式不一样。

    13.3K20

    通宵翻译Pandas官方文档,写了这份Excel万字肝货操作!

    Pandas ,索引可以设置为一个(或多个)唯一值,这就像在工作中有一用作行标识符一样。与大多数电子表格不同,这些索引值实际上可用于引用行。...索引值也是持久的,所以如果你 DataFrame 的行重新排序,特定行的标签不会改变。 5. 副本与就地操作 大多数 Pandas 操作返回 Series/DataFrame 的副本。...数据操作 1. 操作 在电子表格,公式通常在单个单元格创建,然后拖入其他单元格以计算其他的公式。在 Pandas ,您可以直接整列进行操作。...数据透视 电子表格数据透视可以通过重塑和数据透视Pandas 复制。再次使用提示数据集,让我们根据聚会的规模和服务器的性别找到平均小费。...在 Excel ,我们对数据透视使用以下配置: 等效的Pandas代码。

    19.5K20

    数据科学学习手札06)Python在数据框操作上的总结(初级篇)

    ,储存两个数据重复非联结键进行重命名的后缀,默认为('_x','_y') indicator:是否生成一新值_merge,来为合并后的每行标记其中的数据来源,有left_only,right_only...;'outer'表示以两个数据框联结键的并作为新数据框的行数依据,缺失则填充缺省值  lsuffix:左侧数据框重复列重命名的后缀名 rsuffix:右侧数据框重复列重命名的后缀名 sort:表示是否以联结键所在列为排序依据合并后的数据进行排序...5.数据的重整 数据透视是excel中一个很有名且很有用的功能,但是一旦excel中导入的数据集过于庞大,打开都废劲,更不用说生成数据透视了,而这种时候Python的与透视表相似的功能就非常有优势...dataframe.pivot() pivot()的一些参数: index:字符串或对象,作为透视的行标签 columns:字符串或对象,作为透视标签 values:生成新数据框的值(即透视的作用区域...11.数据框的排序 df.sort_values()方法对数据进行排序: 参数介绍: by:为接下来的排序指定一数据作为排序依据,即其他随着这排序而被动的移动 df#原数据框 ?

    14.2K51
    领券