一周学会Pandas2之Python数据处理与分析-数据重塑与透视-unstack() - 解堆 (行 -> 列)

article/2025/7/27 22:11:11

锋哥原创的Pandas2 Python数据处理与分析 视频教程:  

2025版 Pandas2 Python数据处理与分析 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili

unstack() 是 pandas 中用于数据重塑的重要方法,它与 stack() 互为逆操作。unstack() 的主要功能是将行索引的某一层级转换为列索引,从而将数据从长格式转换为宽格式。

基本语法

DataFrame.unstack(level=-1, fill_value=None)

参数说明

  • level (默认为 -1):

    • 指定要移动到列索引的行索引层级

    • 可以是整数(层级位置)、字符串(层级名称)或列表(多个层级)

    • -1 表示最内层(默认值)

  • fill_value (默认为 None):

    • 用于替换缺失值的填充值

    • 如果不指定,缺失值将显示为 NaN

1,基本操作:将行索引转换为列索引

import pandas as pd
​
# 创建多级索引的 Series
index = pd.MultiIndex.from_tuples([('A', 'X'), ('A', 'Y'),('B', 'X'), ('B', 'Y')
])
s = pd.Series([1, 2, 3, 4], index=index)
print("原始Series:")
print(s)
执行 unstack():result = s.unstack()
print("\nunstack() 结果:")
print(result)

2,指定要转换的层级

import pandas as pd
​
# 创建三级索引的 Series
index = pd.MultiIndex.from_tuples([('I', 'A', 'X'), ('I', 'A', 'Y'),('II', 'B', 'X'), ('II', 'B', 'Y')
])
s = pd.Series([10, 20, 30, 40], index=index)
print("初始数据:")
print(s)
# 转换不同层级
print("转换最内层 (level=-1):")
print(s.unstack())  # 默认转换最内层
​
print("\n转换第一层 (level=0):")
print(s.unstack(level=0))
​
print("\n转换第二层 (level=1):")
print(s.unstack(level=1))


http://www.hkcw.cn/article/qoCwNBImCn.shtml

相关文章

算法题(159):快速幂

审题: 本题需要我们计算出(a^b)%c的值,并按照规定格式输出 思路: 方法一:暴力解法 我们直接循环b次计算出a^b,然后再取余c,从而得出最终结果 时间上:会进行2^31次,他的数量级非常大,…

TCP通信与MQTT协议的关系

1. MQTT 处理核心(Mqtt_Pro) void Mqtt_Pro(void) { MQTT_Init(); // 初始化MQTT协议栈(连接参数、缓冲区等) MQTT_SendPro(); // 处理MQTT发送(封装消息,调用TCP发送) MQTT_RecPro();…

kanass V1.1.3版本发布,支持需求评审和Jira的数据导入

Kanass是一款国产开源免费、简洁易用的项目管理工具,包含项目管理、项目集管理、事项管理、工时管理、统计分析相关模块。本周kanass发布V1.1.3版本,增加了需求评审和jira数据的导入功能,优化了页面的展示效果。 1、版本更新日志 新增 ➢ …

OpenCV---minAreaRect

一、基本概念与用途 minAreaRect是OpenCV中用于计算点集的最小面积旋转矩形的函数。在计算机视觉领域,它常被用于: 目标检测中获取倾斜对象的边界框(如倾斜的车牌、文本行、工业零件)形状分析与识别(如确定物体的主方…

颈部异常姿态背后的隐秘困扰

在身体的自然姿态中,颈部本该灵活自如地支撑头部,然而,有一种状况却打破了这份平衡,那就是痉挛性斜颈。它悄无声息地出现,让颈部肌肉不受控制地收缩,迫使头部偏向一侧,或前倾后仰,形…

电路笔记(通信):CAN 仲裁机制(Arbitration Mechanism) 位级监视线与特性先占先得非破坏性仲裁

CAN总线机制 位级监视(bit monitoring) 位级监视(bit monitoring):在 CAN 总线通信中,在每一位发送时进行实时总线监控。 CAN 总线采用 “广播总线监控” 的方式传输数据。在发送每一位的同时&#xff0c…

AAAI 2025 | 解决医学图像分割软边界与共现难题,对比度驱动医学图像分割的通用框架 ConDSeg

论文题目:ConDSeg: A General Medical Image Segmentation Framework via Contrast-Driven Feature Enhancement 论文地址:https://arxiv.org/pdf/2412.08345 Github地址:https://github.com/Mengqi-Lei/ConDSeg ConDSeg:一种基于对比度驱动特征增强的通用医学图像分割框架…

Python图片格式批量转换器教程

📚 前言 编程基础第一期《11-30》-- 在图像处理工作中,我们经常需要将大量图片从一种格式转换为另一种格式。本教程将介绍如何使用Python的Pillow库开发一个简单但功能强大的图片格式批量转换器,帮助你高效处理图片格式转换任务。 目录 &…

Java Math类API全解析

Java中Math类的常用API Java的Math类提供了丰富的数学计算方法,包含静态方法可直接调用,适用于基本数值运算、三角函数、指数对数等场景。以下是常用API分类说明: 基本运算方法 // 绝对值 int absValue Math.abs(-5); // 5// 最大值与…

飞牛fnNAS的Docker应用之迅雷篇

目录 一、“迅雷”应用安装 二、启动迅雷 三、迅雷账号登录 四、修改“迅雷”下载保存路径 1、下载路径准备 2、停止“迅雷”Docker容器 3、修改存储位置 4、重新启动Docker容器 5、再次“启用”迅雷 五、测试 1、在PC上添加下载任务 2、手机上管理 3、手机添加下…

Science Advances 上海理工大学与美国杜克大学(Duke University)共同开发了一种仿生复眼相机

编辑丨%科学家开发了一种 AI 辅助的仿生复眼相机。炎炎夏日,相信各位读者都有被蚊子骚扰过的恼火记忆。但往往想要清剿蚊子的时候,却被它灵巧地躲开,再难找到。诸如蚊子这种节肢动物的视觉系统已经进化了 5 亿多年,从寒武纪一直到…

C# 结合PaddleOCRSharp搭建Http网络服务

Windows打开端口: 控制面板 > 系统和安全 > 防火墙> 高级设置 → 入站规则 → 右侧选择 → 新建规则 → 端口 → 协议类型 TCP→ 端口 using System; using System.Drawing; using System.IO; using System.Net; using System.Text; using System.Threadi…

Real SQL Programming

目录 SQL in Real Programs Options Stored Procedures Advantages of Stored Procedures Parameters in PSM SQL in Real Programs We have seen only how SQL is used at the generic query interface --- an environment where we sit at a terminal and ask queries …

华为OD机试真题——跳格子3(2025A卷:200分)Java/python/JavaScript/C++/C语言/GO六种最佳实现

2025 A卷 200分 题型 本文涵盖详细的问题分析、解题思路、代码实现、代码详解、测试用例以及综合分析; 并提供Java、python、JavaScript、C++、C语言、GO六种语言的最佳实现方式! 2025华为OD真题目录+全流程解析/备考攻略/经验分享 华为OD机试真题《跳格子3》: 目录 题目名称…

UE5蓝图暴露变量,类似Unity中public一个变量,在游戏运行时修改变量实时变化和看向目标跟随目标Find Look at Rotation

UE5蓝图中暴露变量,类似Unity中public一个变量,在游戏运行时修改变量实时变化 1,添加变量 2,设置变量的值 3,点开小眼睛,此变量显示在编辑器中,可以运行时修改 看向目标跟随目标Find Look at R…

第 1 章:学习起步

1. React Native前置知识要求 在开始学习React Native之前,有一些前置知识你需要了解。不过别担心,我会带你逐步掌握这些内容,让你顺利入门。 1.1. JavaScript是必须掌握的 学习React Native,JavaScript是基础。你需要了解Java…

BERT***

​​1.预训练(Pre-training)​​ 是深度学习中的一种训练策略,指在大规模无标注数据上预先训练模型,使其学习通用的特征表示,再通过​​微调(Fine-tuning)​​ 适配到具体任务 2.sentence-lev…

在Mathematica中使用WhenEvent求解微分方程

WhenEvent[event,action]指定当事件event触发时,方程在 NDSolve 及相关函数中执行的操作action。 模拟一个每次弹起后保持95%速度的弹跳球 NDSolve[{y[t] -9.81, y[0] 5, y[0] 0, WhenEvent[y[t] 0, y[t] -> -0.95 y[t]]}, y, {t, 0, 10}]; Plot[y[t] /. %…

Nature:多模态大模型LLMs如何驱动多组学与生命科学研究新范式?

高通量组学技术的快速进步引发了生物数据的爆炸式增长,远超当前对分子层面规律的解析能力。在自然语言处理领域,大语言模型(LLMs)通过整合海量数据构建统一模型,已显现突破数据困境的潜力。 Nature的这篇文章中&#x…

ubuntu20.04安装教程(图文详解)

Ubuntu 24.04 LTS,代号 Noble Numbat,于 2024 年 4 月 25 日发布,现在可以从 Ubuntu 官方网站及其镜像下载。此版本将在 2029 年 4 月之前接收为期五年的官方安全和维护更新。 关于 Ubuntu 24.04 LTS 的一些关键点: 发布日期&am…