pandas 笔记:pivot_table 数据透视表\pivot

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 主要参数

dataDataFrame
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()

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')

 顺序不同,效果也不同

 3.3 values

筛选需要显示的列

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

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

 3.4 columns

列索引

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

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

3.5 aggfunc

聚合方式,默认为求平均

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

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

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

 3.5 fill_value

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

 3.6 margins

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

4 pivot

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

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

 

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')

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/4116.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

瞧瞧别人家的API接口,那叫一个优雅

前言 在实际工作中,我们需要经常跟第三方平台打交道,可能会对接第三方平台API接口,或者提供API接口给第三方平台调用。 那么问题来了,如果设计一个优雅的API接口,能够满足:安全性、可重复调用、稳定性、好…

自动驾驶代客泊车AVP摄像头与ECU交互需求规范

目录 1 文档范围及控制方法... 5 1.1 目的.... 5 1.2 文档授权... 5 1.3 文档变更管理... 5 1.4 缩写.... 5 1.5 术语.... 5 2 系统组成... 6 2.1 系统框图... 6 2.2 电源供应和时序要求... 7 2.2.1 摄像头供电控制... 7 2.2.2 摄像头上电时序要求…

【产品经理】TO B市场分析

市场分析是一个独立而又宏大的学科领域,并且具体使用中,目标和个体不同,分析的方式方法也不同。TO B产品的市场分析是对市场环境、市场规模、性质、特征、竞品进行分析,从而寻找和研究潜在需求的市场机会,帮助产品经理…

[洛谷]P8662 [蓝桥杯 2018 省 AB] 全球变暖(dfs)

读题不规范&#xff0c;做题两年半&#xff01; 注意&#xff1a;被海水淹没后的陆地应用另一个字符表示&#xff0c;而不是把它变为海洋&#xff0c;这个点可以便利&#xff0c;但不能被当作起点&#xff0c;不然就只有 36 分。 ACocde: #include<bits/stdc.h> using…

浅谈无人机遥感图像拼接与处理方法

遥感&#xff08;RS-Remote Sensing&#xff09;——不接触物体本身&#xff0c;用传感器收集目标物的电磁波信息&#xff0c;经处理、分析后&#xff0c;识别目标物&#xff0c;揭示其几何、物理性质和相互关系及其变化规律的现代科学技术。 换言之&#xff0c;即是“遥远的感…

opencv -13 掩模

什么是掩膜&#xff1f; 在OpenCV中&#xff0c;掩模&#xff08;mask&#xff09;是一个与图像具有相同大小的二进制图像&#xff0c;用于指定哪些像素需要进行操作或被考虑。掩模通常用于选择特定区域或进行像素级别的过滤操作。 OpenCV 中的很多函数都会指定一个掩模&…

【Express.js】基于业务特性的分布式结构

基于业务特性的分布式结构 上节的mvc架构&#xff0c;把所有不同模块的同层文件都放在一个目录下 我们也可以将你的项目结构按照业务模块进行划分&#xff0c;每一个模块内可以再按mvc分层&#xff0c;或者不分&#xff0c;这样子把不同模块独立出来的就叫做分布式结构(dcs) …

2. CSS3的新特性

2.1 CSS3的现状 ●新增的CSS3特性有兼容性问题, ie9才支持 ●移动端支持优于PC端 ●不断改进中 ●应用相对广泛 ●现阶段主要学习: 新增选择器和盒子模型以及其他特性 CSS3给我们新增了选择器,可以更加便捷,更加自由的选择目标元素&#xff1a; 1.属性选择器 2.结构伪类选择器…

js常用功能方法

一. 从0~9十个数字中随机选出5个数 function randomFive(){var arr [0,1,2,3,4,5,6,7,8,9];var out [];var num 5;while(out.length < num){var temp (Math.random()*arr.length) >> 0;out.push(arr.splice(temp,1));}return out}二. JS去掉字符串前后空格或去掉…

【详细介绍分析golang中map的相关知识】

golang-map 定义和初始化操作和访问添加和修改元素删除元素获取元素判断键是否存在遍历map 常见应用场景 Golang中的map是一种非常强大和灵活的数据结构&#xff0c;它可以用来存储键值对。在本文中&#xff0c;我们将深入探讨Golang中map的相关知识&#xff0c;包括其定义、初…

1.7 运维可以转行什么

文章目录 运维可以转行什么1. 云计算与DevOps2. 信息安全3. 数据分析与大数据4. 项目管理5. 咨询与培训结论 运维可以转行什么 运维&#xff08;Operations and Maintenance&#xff0c;简称O&M&#xff09;是信息技术领域中的重要职能&#xff0c;负责管理和维护企业的信…

代码随想录一刷day50

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、力扣123.买卖股票的最佳时机III二、力扣● 188.买卖股票的最佳时机IV 前言 一、力扣123.买卖股票的最佳时机III class Solution {public int maxProfit(i…

拖动排序功能的实现 - 使用HTML、CSS和JavaScript

引言 在现代Web应用程序中&#xff0c;拖动排序是一种常见的用户界面交互方式&#xff0c;它允许用户通过拖动元素来重新排列列表或项目的顺序。本文将介绍如何使用HTML、CSS和JavaScript来实现手动拖动排序功能。 一、HTML结构 首先&#xff0c;我们需要定义一个列表&#…

电子病历编辑器源码

电子病历系统采取结构化与自由式录入的新模式&#xff0c;自由书写&#xff0c;轻松录入。化实现病人医疗记录&#xff08;包含有首页、病程记录、检查检验结果、医嘱、手术记录、护理记录等等。&#xff09;的保存、管理、传输和重现&#xff0c;取代手写纸张病历。不仅实现了…

利用深度学习进行黑白照片着色:使用 Keras 构建 GAN 进行照片自动上色的详细实践指南

利用深度学习进行黑白照片着色&#xff1a;使用 Keras 构建 GAN 进行照片自动上色的实践指南 在这篇博客文章中&#xff0c;我们将探讨一个具有挑战性的问题&#xff0c;即如何利用深度学习自动为黑白照片上色。传统的图片上色过程是一个艰苦且劳动密集型的过程&#xff0c;必…

Cannot get a STRING value from a NUMERIC cell

Cannot get a STRING value from a NUMERIC cell 错误一&#xff1a; 导入Excel表格数据&#xff0c;该列设置数据类型为String&#xff0c;输入数据是int类型 解决方法&#xff1a;cell.setCellType(CellType.STRING); 错误二&#xff1a;日期类型需要定义格式 解决方法如下&a…

朝花夕拾 - 2023 精神错乱记录

jsliang 的精神错乱记录&#xff0c;一点 2023 小思考。 也许我们曾偏离航道&#xff0c;但请不要放弃抵达终点 前言 在 2020.11 过来珠海&#xff0c;来到金山工作 2 年半的时间里&#xff1a; 在工作上&#xff0c;更换了 3 个小团队&#xff0c;达到了每年一换在工作上&…

autok3s k3d rancher研究

参考 功能介绍 | Rancher文档AutoK3s 是用于简化 K3s 集群管理的轻量级工具&#xff0c;您可以使用 AutoK3s 在任何地方运行 K3s 服务。http://docs.rancher.cn/docs/k3s/autok3s/_index 什么是 AutoK3s k3s是经过完全认证的 Kubernetes 产品&#xff0c;在某些情况下可以替…

沉淀自己的pro-table组件,并发布到npm(Vue3、element-plus)

文章目录 沉淀自己的pro-table组件&#xff0c;并发布到npmQuick Start开发过程笔记add TS Support 参考资料 沉淀自己的pro-table组件&#xff0c;并发布到npm 传送门 约定&#xff1a;npm包名vue3-el-pro-table&#xff0c;引用vue3-el-pro-table的包名为“本项目”。 声明…

Oracle EBS 客制化AP发票无法验证和关联交易的AR事务处理无法创建

背景: 在某项目上,国外账套上线以后,国外法人所有单据使用英文(US);涉及关联交易时,如国外公司使用英文环境创建AP发票,国内公司使用中文环境创建AR事务处理。 问题症状: 1、客制化AP发票接口API采用异步方式处理,每次从客制化AP发票接口表中取一定记录条数批量处理,…