pandas 笔记:pivot_table 数据透视表

这篇具有很好参考价值的文章主要介绍了pandas 笔记:pivot_table 数据透视表。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1 基本使用方法

pandas.pivot_table(
    data, 
    values=None, 
    index=None, 
    columns=None, 
    aggfunc='mean', 
    fill_value=None, 
    margins=False, 
    dropna=True, 
    margins_name='All', 
    observed=False, 
    sort=True)

2 主要参数

data DataFrame
values 要进行聚合的列
index 在数据透视表索引(index)上进行分组的键
columns 在数据透视表列(column)上进行分组的键
agg_func 聚合方式
fill_value 缺省值的填充方式,默认为NAN
margins 默认为False,设置为True之后,会计算一个总的value值

3 使用方法

3.0 导入数据

import pandas as pd
# Visual Python: Data Analysis > File
vp_df = pd.read_csv('https://raw.githubusercontent.com/visualpython/visualpython/main/visualpython/data/sample_csv/tips.csv')

import seaborn as sns
import numpy as np
vp_df.head()

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

3.1 基本使用

vp_df.pivot_table(index='day',
                 columns='time',
                 values='total_bill')

 

 3.2 index

  • aggfunc默认按平均值聚合,values默认只显示可以按平均值聚合的数据

index为一列名字的效果如3.1所示,多列的话,效果如下

vp_df.pivot_table(index=['day','size'],
                 columns='time',
                 values='total_bill')

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 顺序不同,效果也不同

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 3.3 values

筛选需要显示的列

values 中一个元素的结果和3.1一样,如果是多个元素,那就是一个value的透视表之后接另一个:

vp_df.pivot_table(index='day',
                 columns='time',
                 values=['total_bill','size'])

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 3.4 columns

列索引

columns中一个元素的结果和3.1一样,如果是多个元素,那就是

vp_df.pivot_table(index='day',
                 columns=['time','size'],
                 values='total_bill')

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

3.5 aggfunc

聚合方式,默认为求平均

vp_df.pivot_table(index='day',
                 columns='time',
                 values='total_bill',
                 aggfunc=sum)

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

3.5.1 不同的列不同的聚合方式

vp_df.pivot_table(index='day',
                 columns='time',
                 values=['total_bill','size'],
                  aggfunc={'total_bill':sum,'size':min},
                 margins=True)

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 3.5 fill_value

vp_df.pivot_table(index='day',
                 columns='time',
                 values='total_bill',
                 fill_value='Not a Num')

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 3.6 margins

vp_df.pivot_table(index='day',
                 columns='time',
                 values='total_bill',
                  aggfunc=sum,
                 margins=True)

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

4 pivot

不同于pivot_table,pivot不会进行聚合操作,换言之,如果index中有重复值,那么pivot会报错

vp_df.pivot_table(index='day',
            columns='time',
           values='total_bill')

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 文章来源地址https://www.toymoban.com/news/detail-584739.html

vp_df.pivot(index='day',
            columns='time',
           values='total_bill')

#ValueError: Index contains duplicate entries, cannot reshape
vp_df.pivot_table(index='tip',
            columns='time',
           values='total_bill')

pandas 笔记:pivot_table 数据透视表,python库整理,pandas,笔记,python

 

到了这里,关于pandas 笔记:pivot_table 数据透视表的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【100天精通Python】Day57:Python 数据分析_Pandas数据描述性统计,分组聚合,数据透视表和相关性分析

    目录 1 描述性统计(Descriptive Statistics) 2 数据分组和聚合 3 数据透视表 4 相关性分析

    2024年02月07日
    浏览(57)
  • Pandas数据分析系列9-数据透视与行列转换

       当数据量较大时,为了更好的分析数据特征,通常会采用数据透视表。 数据透视表是一种对数据进行汇总和分析的工具,通过重新排列和聚合原始数据,可以快速获得更全面的数据洞察。数据透视表在 Excel 中也是经常使用的一个强大功能,在 Pandas 模块,其提供了 pivot

    2024年02月08日
    浏览(39)
  • Pandas.DataFrame.groupby() 数据分组(数据透视、分类汇总) 详解 含代码 含测试数据集 随Pandas版本持续更新

    关于Pandas版本: 本文基于 pandas2.2.0 编写。 关于本文内容更新: 随着pandas的stable版本更迭,本文持续更新,不断完善补充。 传送门: Pandas API参考目录 传送门: Pandas 版本更新及新特性 传送门: Pandas 由浅入深系列教程 DataFrame.groupby() 方法用于使用映射器或指定的列,对 D

    2024年01月16日
    浏览(50)
  • pandas笔记:groupby整理

    按照Type 聚类,聚类后将同组的Kg属性合并,求均值 聚合的内容可以是 max, min, mean, unique(唯一值), nunique(唯一值数量),lambda 表达式       按照Type 聚类,聚类后将同组的Kg、Depth属性合并,求均值   重命名的名字=(需要操作的列名,需要的操作名)       参考内容:

    2024年02月16日
    浏览(40)
  • 【Python数据处理】-Pandas笔记

    Pandas是一个强大的Python数据处理库,它提供了高效的数据结构和数据分析工具,使数据处理变得简单而快速。本篇笔记将介绍Pandas中最常用的数据结构——Series和DataFrame,以及数据处理的各种操作和技巧。 (一)创建Series Series是Pandas中的一维数组,类似于带有标签的NumPy数组

    2024年02月12日
    浏览(44)
  • python数据分析学习笔记之matplotlib、numpy、pandas

    为了学习机器学习,在此先学习以下数据分析的matplotlib,numpy,pandas,主要是为自己的学习做个记录,如有不会的可以随时查阅。希望大家可以一起学习共同进步,我们最终都可以说:功不唐捐,玉汝于成。就算遇到困难也不要气馁,大声说:我不怕,我敏而好学!! 把大量

    2024年02月08日
    浏览(56)
  • 【pandas基础】--数据整理

    pandas 进行数据整理的意义在于,它是数据分析、数据科学和机器学习的前置步骤。 通过数据整理可以提前了解数据的概要,缺失值、重复值等情况,为后续的分析和建模提供更为可靠的数据基础。 本篇主要介绍利用 pandas 进行数据整理的各种方法。 获取数据概要信息可以帮

    2024年02月04日
    浏览(59)
  • pandas 透视表

    index: 分类列, 透视表的row索引 columns: 透视表中的列索引 values: 统计的列 aggfunc:统计函数 fill_value: 空值填充 margins: 是否添加汇总行和列 margins_name: 汇总行和列的名称

    2024年02月15日
    浏览(25)
  • (CDA数据分析师学习笔记)第五章多维数据透视分析一

    商业智能报表:BI报表。 ETL: 全称 Extract-Transform-Load ,即提取(extract)、转换(transform)、加载(load)。 E 是第一步对源数据进行抽取,源数据主要来源于业务系统、文件数据、第三方数据。T是第二步,对数据进行适当处理,目的是为了下一步的加载。主要是筛选(有价值

    2024年04月11日
    浏览(42)
  • Python学习——数据分组统计、分组运算及透视

    分割 split : 按照键值(key)或者分组变量将数据分组 应用 apply : 对每个组应用函数, 通常是累计,转换或过滤函数 组合 combine : 将每一组的结果合并成一个输出组 常用功能 新增加一列 年龄ew 将填充后的年龄补充上去 数据聚合(agg):一般指的是能够从数组产生的标量值的数

    2024年02月10日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包