首页
学习
活动
专区
圈层
工具
发布

一行Pandas代码制作数据分析透视表,太牛了

相信大家都用在Excel当中使用过数据透视表(一种可以对数据动态排布并且分类汇总的表格格式),也体验过它的强大功能,在Pandas模块当中被称作是pivot_table,今天小编就和大家来详细聊聊该函数的主要用途...导入模块和读取数据 那我们第一步仍然是导入模块并且来读取数据,数据集是北美咖啡的销售数据,包括了咖啡的品种、销售的地区、销售的利润和成本、销量以及日期等等 import pandas as pd def...index、values、columns以及aggfunc,其中每个数据透视表都必须要有一个index,例如我们想看每个地区咖啡的销售数据,就将“region”设置为index df.pivot_table...columns类似于之前提到的index用来设置列层次的字段,当然它并不是一个必要的参数,例如 df.pivot_table(index=['region'], values=['sales'], aggfunc...='sum', columns=['product_category']) output 在“列”方向上表示每种咖啡在每个地区的销量总和,要是我们不调用columns参数,而是统一作为index索引的话

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

    pandas中的loc和iloc_pandas获取指定数据的行和列

    大家好,又见面了,我是你们的朋友全栈君 实际操作中我们经常需要寻找数据的某行或者某列,这里介绍我在使用Pandas时用到的两种方法:iloc和loc。...目录 1.loc方法 (1)读取第二行的值 (2)读取第二列的值 (3)同时读取某行某列 (4)读取DataFrame的某个区域 (5)根据条件读取 (6)也可以进行切片操作 2.iloc方法 (1)...读取第二行的值 (2)读取第二行的值 (3)同时读取某行某列 (4)进行切片操作 ---- loc:通过行、列的名称或标签来索引 iloc:通过行、列的索引位置来寻找数据 首先,我们先创建一个...Dataframe,生成数据,用于下面的演示 import pandas as pd import numpy as np # 生成DataFrame data = pd.DataFrame(np.arange...,"D","E"]] 结果: 2.iloc方法 iloc方法是通过索引行、列的索引位置[index, columns]来寻找值 (1)读取第二行的值 # 读取第二行的值,与loc方法一样 data1

    21.3K21

    用过Excel,就会获取pandas数据框架中的值、行和列

    标签:python与Excel,pandas 至此,我们已经学习了使用Python pandas来输入/输出(即读取和保存文件)数据,现在,我们转向更深入的部分。...在Python中,数据存储在计算机内存中(即,用户不能直接看到),幸运的是pandas库提供了获取值、行和列的简单方法。 先准备一个数据框架,这样我们就有一些要处理的东西了。...df.columns 提供列(标题)名称的列表。 df.shape 显示数据框架的维度,在本例中为4行5列。 图3 使用pandas获取列 有几种方法可以在pandas中获取列。...语法如下: df.loc[行,列] 其中,列是可选的,如果留空,我们可以得到整行。由于Python使用基于0的索引,因此df.loc[0]返回数据框架的第一行。...接着,.loc[[1,3]]返回该数据框架的第1行和第4行。 .loc[]方法 正如前面所述,.loc的语法是df.loc[行,列],需要提醒行(索引)和列的可能值是什么?

    30.2K60

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

    当然,如果说只实现这两个需求还不能完全表达出数据透视表与常规的groupby有何区别,所以不妨首先看个例子: 给定经典的titanic数据集,我们需要统计不同性别下的生还人数,则可以进行如下设置: ?...可以明显注意到该函数的4个主要参数: values:对哪一列进行汇总统计,在此需求中即为name字段; index:汇总后以哪一列作为行,在此需求中即为sex字段; columns:汇总后以哪一列作为列...上述需求很简单,需要注意以下两点: pandas中的pivot_table还支持其他多个参数,包括对空值的操作方式等; 上述数据透视表的结果中,无论是行中的两个key("F"和"M")还是列中的两个key...上述在分析数据透视表中,将其定性为groupby操作+行转列的pivot操作,那么在SQL中实现数据透视表就将需要groupby和行转列两项操作,所幸的是二者均可独立实现,简单组合即可。...值得指出,这里通过if条件函数来对name列是否有实际取值+count计数实现聚合,实际上还可以通过if条件函数衍生1或0+sum求和聚合实现,例如: ? 当然,二者的结果是一样的。

    4.1K30

    用Python实现透视表的value_sum和countdistinct功能

    在pandas库中实现Excel的数据透视表效果通常用的是df['a'].value_counts()这个函数,表示统计数据框(DataFrame) df的列a各个元素的出现次数;例如对于一个数据表如pd.DataFrame...Pandas中的数据透视表各功能 用过Excel透视表功能的话我们知道,出了统计出现次数之外,还可以选择计算某行的求和、最大最小值、平均值等(数据透视表对于数值类型的列默认选求和,文本类型默认选计数),...还是拿表df来说,excel的数据透视表可以计算a列的A、B、C三个元素对应的c列的求和(sum),但是pandas库并没有value_sum()这样的函数,pandas的sum函数是对整列求和的,例如...df['b'].sum()是对b列求和,结果是21,和a列无关;所以我们可以自己按照根据a列分表再求和的思路去实现。...,直接在透视表的行选渠道,值选uid计数,得到的是没去重的结果,拿df表来说,假设c列是用户id,a列是渠道,想统计a列的A、B、C各渠道各有多少付费用户数,透视表的结果和期望的结果如下图: ?

    4.8K21

    左手pandas右手Python,带你学习数据透视表

    数据透视表是数据分析工作中经常会用到的一种工具。Excel本身具有强大的透视表功能,Python中pandas也有透视表的实现。...本文使用两个工具对同一数据源进行相同的处理,旨在通过对比的方式,帮助读者加深对数据透视表的理解。 数据源简介: 本文数据源来自网络,很多介绍pandas的文章都使用了该数据。...Excel的总计行也可以在“设计”选项卡,“总计”,“对行和列禁用去掉”。 ?...,列表里可以传入多个参数,如 table.query('Rep == ["Craig Booker", "John Smith"]') 2.excel实现 做好的数据透视表,具有行和列的筛选功能。...小结与备忘: index-对应透视表的“行”,columns对应透视表的列,values对应透视表的‘值’,aggfunc对应值的汇总方式。用图形表示如下: ?

    4.3K40

    软件测试|Pandas数据分析及可视化应用实践

    Pandas是一个基于Numpy的数据分析库,它提供了多种数据统计和数据分析功能,使得数据分析人员在Python中进行数据处理变得方便快捷,接下来将使用Pandas对MovieLens 1M数据集进行相关的数据处理操作...DataFrame表示的是矩阵的数据表,二维双索引数据结构,包括行索引和列索引。Series是一种一维数组型对象,仅包含一个值序列与一个索引。本文所涉及的数据结构主要是DataFrame。...图片4、使用数据透视表pivot_table获得根据性别分级的每部电影的平均电影评分数据透视表pivot_table是一种类似groupby的操作方法,常见于EXCEL中,数据透视表按列输入数据,输出时...,必要参数values :对目标数据进行筛选,默认是全部数据,可通过values参数设置我们想要展示的数据列。...columns :透视表的列索引,非必要参数,同index使用方式一样aggfunc :对数据聚合时进行的函数操作,默认是求平均值,也可以sum、count等margins :额外列,默认对行列求和fill_value

    2K30

    Pandas透视表及应用

    Pandas 透视表概述 数据透视表(Pivot Table)是一种交互式的表,可以进行某些计算,如求和与计数等。所进行的计算与数据跟数据透视表中的排列有关。...之所以称为数据透视表,是因为可以动态地改变它们的版面布置,以便按照不同方式分析数据,也可以重新安排行号、列标和页字段。每一次改变版面布置时,数据透视表会立即按照新的布置重新计算数据。...另外,如果原始数据发生更改,则可以更新数据透视表。...:dataframe.pivot_table() index:行索引,传入原始数据的列名 columns:列索引,传入原始数据的列名 values: 要做聚合操作的列名 aggfunc:聚合函数  custom_info.pivot_table...(index = '注册年月',values = '会员卡号',aggfunc = 'count’)  计算存量 cumsum 对某一列 做累积求和 1 1+2 1+2+3 1+2+3+4 ...

    1.1K10

    从pandas中的这几个函数,我看懂了道家“一生二、二生三、三生万物”

    导读 pandas是用python进行数据分析最好用的工具包,没有之一!从数据读写到预处理、从数据分析到可视化,pandas提供了一站式服务。...普通聚合函数mean和agg的用法区别是,前者适用于单一的聚合需求,例如对所有列求均值或对所有列求和等;而后者适用于差异化需求,例如A列求和、B列求最值、C列求均值等等。...05 pivot_table pivot_table是pandas中用于实现数据透视表功能的函数,与Excel中相关用法如出一辙。 何为数据透视表?...数据透视表本质上仍然数据分组聚合的一种,只不过是以其中一列的唯一值结果作为行、另一列的唯一值结果作为列,然后对其中任意(行,列)取值坐标下的所有数值进行聚合统计,就好似完成了数据透视一般。...在以上参数中,最重要的有4个: values:用于透视统计的对象列名 index:透视后的行索引所在列名 columns:透视后的列索引所在列名 aggfunc:透视后的聚合函数,默认是求均值 这里仍然以求各班每门课程的平均分为例

    3.1K10

    盘点66个Pandas函数,轻松搞定“数据清洗”!

    今天我们重新盘点66个Pandas函数合集,包括数据预览、数值数据操作、文本数据操作、行/列操作等等,涉及“数据清洗”的方方面面。...在对文本型的数据进行处理时,我们会大量应用字符串的函数,来实现对一列文本数据进行操作[2]。...成绩') 输出: pivot()其实就是用 set_index()创建层次化索引,再用unstack()重塑 df1.set_index(['姓名','科目']).unstack('科目') 数据分组与数据透视表更是一个常见的需求...df.groupby("科目").mean() 由于pivot_table()数据透视表的参数比较多,就不再使用案例来演示了,具体用法可参考下图。...今天我们盘点了66个Pandas函数合集,但实际还有很多函数在本文中没有介绍,包括时间序列、数据表的拼接与连接等等。此外,那些类似describe()这种大家非常熟悉的方法都省去了代码演示。

    4.9K11

    左手用R右手Python系列10——统计描述与列联分析

    Python: 关于Python中的变量与数据描述函数,因为之前已经介绍过一些基础的聚合函数,这里仅就我使用最多的数据透视表和交叉表进行讲解:Pandas中的数据透视表【pivot_table】和交叉表...透视表中的行字段,通常为类别型字段) columns=None, #列字段(对应Excel透视表中的列字段,通常为类别型字段) values=None...pandas的交叉表函数pd.crosstab参数设定规则与透视表保持了很高的相似度,确实从呈现形式上来讲,数值型变量的尽管聚合方式有很多【均值、求和、最大值、最小值、众数、中位数、方差、标准差、求和等...,其理念大致与Excel中的透视表理念一致,只要把握好关于行、列、度量值和聚合函数的设定规则即可。...以上透视表是针对数值型变量的分组聚合,那么针对类别型变量则需要使用pandas中的交叉表函数进行列表分析。

    4.3K120

    8个Python高效数据分析的技巧。

    在Pandas中,删除一列或在NumPy矩阵中求和值时,可能会遇到Axis。...我们用删除一列(行)的例子: df.drop('Column A', axis=1) df.drop('Row A', axis=0) 如果你想处理列,将Axis设置为1,如果你想要处理行,将其设置为0...如果你想在Python中对其进行索引,则行数下标为0,列数下标为1,这很像我们如何声明轴值。 6 Concat,Merge和Join 如果您熟悉SQL,那么这些概念对你来说可能会更容易。...27 df.apply(np.sum, axis=1) 0 13 1 13 2 13 8 Pivot Tables 如果您熟悉Microsoft Excel,那么你也许听说过数据透视表...Pandas内置的pivot_table函数以DataFrame的形式创建电子表格样式的数据透视表,,它可以帮助我们快速查看某几列的数据。

    2.9K10

    Python数据透视表与透视分析:深入探索数据关系

    数据透视表是一种用于进行数据分析和探索数据关系的强大工具。它能够将大量的数据按照不同的维度进行聚合,并展示出数据之间的关系,帮助我们更好地理解数据背后的模式和趋势。...在Python中,有多个库可以用来创建和操作数据透视表,其中最常用的是pandas库。 下面我将介绍如何使用Python中的pandas库来实现数据透视表和透视分析。...df = pd.read_csv('data.csv') # 根据实际情况修改文件路径和格式 3、创建数据透视表:使用pandas的pivot_table()函数可以轻松创建数据透视表。...下面是一些常用的操作: 筛选数据:可以基于数据透视表中的特定值或条件筛选出我们感兴趣的数据。...filtered_data = pivot_table[pivot_table['category'] == 'A'] 计算汇总统计量:可以对数据透视表中的行、列或整个表格进行统计计算,比如求和、平均值等

    1.1K10

    业界 | 用Python做数据科学时容易忘记的八个要点!

    它们都有特定的用途,但在这里我们看中的是它们都输出Numpy数组(而非其使用范围),这通常更容易用于数据科学。 Arange在给定的范围内返回间隔均匀的值。...在Pandas中删除列或在NumPy矩阵中对值进行求和时,可能会遇到这问题。...你可以从上面看出,如果要处理列,就将axis设为1,如果要处理行,则将其设为0。 但为什么会这样呢?...你可以想象这是多么有用,特别是在对整个DataFrame的列处理格式或运算数值的时候,可以省去循环。 ? 透视表 最后要说到的是透视表。...如果你熟悉Microsoft Excel,那么你可能已经听说过数据透视表。Pandas内置的pivot_table函数将电子表格样式的数据透视表创建为DataFrame。

    1.8K00

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

    你还可以指定用"总和"、"均值"等聚合函数来汇总每个格子的数据。 拥有了这张透视表,数据就井然有序了。你可以一览无余地观察每个类别、每个地区的销售情况,发现潜在规律和异常。...", index="要作为行索引的列或列的列表", columns="要作为列索引的列或列的列表", aggfunc="用于聚合数据的函数或函数列表,默认是 numpy.mean...(Region)卖出的产品(Product),以及当前产品的销售额(Sales),客户质量(Quantity),现在希望对每个地区售卖的产品和销售额做一个统计汇总透视表。...透视表代码实现如下: # 对 Sales 进行求和操作,行索引是Region,列索引是各个 Product, # 对行和列增加统计 total In [56]: pd.pivot_table(df,...多维度数据透视与总结,透视表功能可以按任意的行列索引对数据进行高效切割与聚合,全方位统计各维度的关键信息。

    1.2K00
    领券