跳过主要导航

如何重塑数据集?

数据分析师必须具有从不同布局和方向查看数据的能力和工具,以便汲取可靠的见解。

首先,让我们定义数据集的“形状”。数据集的形状是指将数据集排列到行中的方式,重塑数据是数据的重新排列,而无需更改数据集的内容。在数据操作和分析过程中,重塑数据集是一项非常频繁且繁琐的任务。数据分析师必须具有从不同布局和方向查看数据的能力和工具,以便汲取可靠的见解。

在Python中重塑数据集

Python提供了多种功能来重塑数据集,因此让我们探索其中两个。

    • 堆():通过将数据转换为堆叠的形式来重塑数据框,这意味着将最内向的列索引旋转到最内向的行索引中。
    • unstack()。通过将最内向的行索引重新调整回最终的列索引来重塑数据框。

这是两个函数的语法:

数据框架((等级=  -1,,,,dropna=真的
数据框架解开((等级=  -1,,,,fill_value=没有任何

stack()函数

让我们尝试以一些示例来尝试这些操作。使用这些代码片段:

首先,创建一个虚拟数据框。

代码:

数据=PD数据框架((NPArange((6)。重塑(((((2,,,,3),指数=PD指数[[[[“维多利亚”,,,,'NSW'],,姓名='状态'),=PD指数[[[['一',,,,'二',,,,'三'],,姓名='数字'))数据

输出:

图形显示一个表。Y轴标签读取状态,VIC,新南威尔士州和顶部的X轴读取一,二,三。VIC的行读取0、1、2。新南威尔士州的行读取3、4、5。

接下来,我们使用堆()功能,我们将列将列转移到行中。

代码:

data_stack=数据()data_stack

输出:

图形显示一个表。Y轴标签VIC,新南威尔士州。X轴读取状态和数字。每行都读取Vic,一个,0;维克,两个,1;维克,三,2;新南威尔士州,一,3;新南威尔士州二,4;新南威尔士州,三,5。桌子的最后一行为“ dtype:int32”上写着

您可以看到:

    • 该操作将列转换为行标签
    • 该操作将数据框转换为系列。

您可以使用此代码确认这些更改:

代码:

类型((data_stack

输出:

pandas.core.series.Series

代码:

data_stack指数

输出:

MultiIndex(latve = [[['Victoria','NSW'],['一个','二,'三'],],
标签= [[0,0,0,1,1,1],[0,1,2,2,0,1,2]],
名称= ['state','number'])

unstack()函数

您可以使用unstack()功能。

尝试此代码:

代码:

数据=data_stack解开()数据

输出:

图形显示一个表。Y轴标签读取状态,VIC,新南威尔士州和顶部的X轴读取一,二,三。VIC的行读取为0、1、2。新南威尔士州的行读取3、4、5。

默认情况下,最内向的级别没有堆积。在我们的示例中,这是一个数字。但是,您可以通过将级别的数字或名称作为参数传递给其他级别unstack()方法。

例如,尝试解开堆放的代码data_stack在状态级别,而不是数字:

代码:

data_state=data_stack解开(('状态'data_state

输出:

图形显示一个表。Y轴标签读取了一个,二,三和X轴的顶部读取状态,VIC,新南威尔士州。一行读数:0,3。第2行读数:1,4。第三行读数:2,5。

本文来自免费的在线免费

Python数据分析简介

由...制作
FutureLearn-终身学习

我们的目的是改变接受教育的机会。

我们提供来自世界各地的大学和文化机构的各种课程。这些一次是一次交付的一步,并且可以在移动,平板电脑和台式机上访问,因此您可以适合自己的生活。

我们认为,学习应该是一种愉快的社交经验,因此我们的课程为您提供了与他人一起讨论的机会,帮助您做出新的发现并形成新的想法。
您可以通过订阅我们无限制的包裹来解锁新的机会,以无限制地访问数百种在线短课程。电竞博彩app有什么通过顶尖的大学和组织建立知识。dota2竞猜吧

了解有关FutureLearn如何转化接受教育的更多信息