首页 > 编程语言 >Python学习笔记:删除多级索引

Python学习笔记:删除多级索引

时间:2022-11-20 21:24:02浏览次数:60  
标签:index 删除 Python 多级 索引 df columns

Python 中使用 stack/unstack/melt/pivot_talbe 等函数进行聚合之后,计算得到的结果具有多层索引。

一般情况下可以通过额外指定 columns 或者通过 reset_index() 可重置。

一、举个例子

import pandas as pd
import numpy as np

# 创建数据框
df = pd.DataFrame(np.arange(9).reshape(3,3),
                  columns=[['x','x','y'],['x1','x2','y1']],
                  index=[['A','A','B'],['a','a','b']])

# 索引
df.index
'''
MultiIndex([('A', 'a'),
            ('A', 'a'),
            ('B', 'b')],
           )
'''

# 列名
df.columns
'''
MultiIndex([('x', 'x1'),
            ('x', 'x2'),
            ('y', 'y1')],
           )
'''

二、降低索引级别

# 合并多级索引
df.columns = ["_".join(x) for x in df.columns.ravel()]

Pandas.Series.ravel() 函数将展平的基础数据作为 ndarray 返回。

三、删除索引

# 删除
df.columns = df.columns.droplevel(1) # 删除第2层索引
df.columns = df.columns.droplevel(0) # 删除最外层索引

参考链接:Python pandas多层次索引降级为单层索引

标签:index,删除,Python,多级,索引,df,columns
From: https://www.cnblogs.com/hider/p/16909574.html

相关文章

  • PYTHON_numpy
    C数组中数据类型一致;python列表可不一致,但numpy数组array中数据类型需一致如传进来的包含不同类型,则自动统一为同一类型,优先级:str>float>int1. array():importnum......
  • python算法题1:给定一个已按照升序排列的有序数组,找到两个数使得它们相加之和等于目标
    题目:给定一个已按照升序排列的有序数组,找到两个数使得它们相加之和等于目标数。 函数应该返回这两个下标值index1和index2,其中index1必须小于index2。 说明: ......
  • python中循环值的处理
    以python3为例关于循环中经常出现赋值问题的几个形式(要赋值的变量a,循环变量b)就比如foriinrange(n):相对于b来说 1:a+=b......
  • python-解析式
     列表解析式(ListComprehension) 列表解析式的优势比循环更节省时间和空间。需要更少的代码行。可将迭代语句转换为公式。 公式#不加条件[返回值for元素......
  • python 打包 exe程序 ——注意事项以及运行exe报错【ModuleNotFoundError: No module
    只说打包成单文件——【仅针对win系统】步骤:1、写脚本2、在当前环境下安装pyinstaller3、打开终端界面【terminal】(1)切换到当前程序所在路径(2)运行打包命令: ......
  • mysql索引优化解决方案
    mysql索引优化解决方案(在b站动力节点学习的)可能因为这个视频是比较新的视频,评论区都没有什么笔记和文档。于是我就跟着视频边学边记录笔记。希望有些建表的代码,有需要的......
  • 二进制安装docker的shell脚本和python脚本
    1.python脚本点击查看代码#!/bin/pythonimportosfrompathlibimportPathimporttarfileimportshutilimportgrpdefAddGroup():group_name="docker"......
  • PYTHON_pandas
    1.读写文件importpandasaspddata=pd.read_excel('C:/.../stock.xlsx')data2=pd.read_csv('C:/.../stock.csv')2.展示前n行data.head(5)3.基本信息data......
  • 为NAS文件创建目录索引
    技术工坊NAS虽为局域网内的文件共享提供了便利,但大体量文件的管理又成了件麻烦事。市面上的很多NAS不像面面俱到的群晖,能附带一套完善(臃肿)的管理套件。它们往往只是个带基......
  • python进程
    今日内容概要同步与异步阻塞与非阻塞创建进程的多种方式进程join方法进程间数据隔离进程间通信之IPC机制进程对象诸多方法生产者消费者模型互斥锁今日内容......