python dataframe索引转成列_Pandas之DataFrame对象的列和索引之间的转化

2023-10-31

约定:

import pandas as pd

DataFrame对象的列和索引之间的转化

我们常常需要将DataFrame对象中的某列或某几列作为索引,或者将索引转化为对象的列。pandas提供了set_index()/reset_index() 来供我们使用。

一、列转化为索引

df1=pd.DataFrame({'X':range(5),'Y':range(5),'S':list("aaabb"),'Z':[1,1,2,2,2]})

df1

代码结果:

S

X

Y

Z

0

a

0

0

1

1

a

1

1

1

2

a

2

2

2

3

b

3

3

2

4

b

4

4

2

指定列为索引

df1.set_index('S')

代码结果:

X

Y

Z

S

a

0

0

1

a

1

1

1

a

2

2

2

b

3

3

2

b

4

4

2

指定多个列作为多级索引

df1.set_index(['S','Z'])

代码结果:

X

Y

S

Z

a

1

0

0

1

1

1

2

2

2

b

2

3

3

2

4

4

同时保留作为索引的列

df1.set_index(['S','Z'],drop=False)

代码结果:

S

X

Y

Z

S

Z

a

1

a

0

0

1

1

a

1

1

1

2

a

2

2

2

b

2

b

3

3

2

2

b

4

4

2

二、索引转化为列

df2=df1.set_index(['S','Z'])

df2

代码结果:

X

Y

S

Z

a

1

0

0

1

1

1

2

2

2

b

2

3

3

2

4

4

将单个索引作为DataFrame对象的列

df2.reset_index('Z')

代码结果:

Z

X

Y

S

a

1

0

0

a

1

1

1

a

2

2

2

b

2

3

3

b

2

4

4

将多级索引作为列

df2.reset_index()

代码结果:

S

Z

X

Y

0

a

1

0

0

1

a

1

1

1

2

a

2

2

2

3

b

2

3

3

4

b

2

4

4

直接删除对指定索引

df2.reset_index('Z',drop=True)

代码结果:

X

Y

S

a

0

0

a

1

1

a

2

2

b

3

3

b

4

4

直接对原DataFrame对象修改

df2.reset_index(inplace=True)

df2

代码结果:

S

Z

X

Y

0

a

1

0

0

1

a

1

1

1

2

a

2

2

2

3

b

2

3

3

4

b

2

4

4

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

python dataframe索引转成列_Pandas之DataFrame对象的列和索引之间的转化 的相关文章

  • object对象转数组

    解决方案 let arr for let ip in harddisklist const item Object assign ip harddisklist ip arr push item arr push ip harddiskli
  • C# winform中调用摄像头,拍摄并保存图片!

    首先在NuGet中 下载AForge包 把这些都添加进项目中 1 命名空间和公共属性 using AForge Video DirectShow using System using System Drawing using System
  • 点云中截取自己想要的点云

    文章目录 一 利用python保留自己想要的点云 二 将txt转换为pcd 三 可视化对比 一 利用python保留自己想要的点云 1 python读取pcd点云文件 需要使用python的库open3d读取 在pycharm中打开终端 输
  • educoder算法设计与分析 实验五 回溯法拓展2

    实验五 回溯法拓展2 第1关 非递归实现皇后问题 第2关 递归算法解决皇后问题 第3关 素数圈 第1关 非递归实现皇后问题 题目描述 本关任务 在n n格的棋盘上放置彼此不受攻击的 n 个皇后 按照国际象棋的规则 皇后可以攻击与之处在同一行
  • oracle数据库的 date 和 timestamp 类型区别

    1 date类型存储数据的格式为年月日时分秒 可以精确到秒 timestamp类型存储数据的格式为年月日时分秒 可以精确到纳秒 9位 2 date类型 Date类型的数据可以显示到年月日 也可以显示到年月日时分秒 主要看存储数据的精确度 注
  • 《软件架构设计》一书目录

    第一部分软件架构概念与思想篇 1第1章解析软件架构概念 3 1 1软件架构概念的分类 3 1 1 1组成派 4 1 1 2决策派 5 1 2软件架构概念大观 5 1 2 1Booch Rumbaugh和Jacobson的定义 5 1 2 2
  • 机智的Open3D学习生活(第一集):入坑前的准备工作

    1 Open3D的开源项目地址 https github com isl org Open3D 2 Open3D的官网地址 http www open3d org 3 Open3D的文档地址 http www open3d org docs
  • Jetson 上cmake 带cuda 的程序报错

    报错信息为 找不到CUDA 架构 https blog csdn net qq 19449259 article details 128001426 把cuda 的nvcc 加入环境变量之后 又报了如下错误 报错信息如下 D CUDACC
  • 猿人学APP逆向第一题

    一 抓包 加密参数sign 二 静态分析 2 1搜索app1直接直接定位到请求位置 查看用例直接定位到加密位置 可以直接看到Sign sign 方法就是加密函数 2 2frida hook加密函数 一目了然 第一题太简单了就不过多分析 直接
  • JavaScript数据结构之栈

    JavaScript 数据结构之栈思维导图 JavaScript 数据结构之栈源码
  • MUI蓝牙打印(Android)

    MUI蓝牙打印 Android 使用MUI开发手机APP时使用蓝牙打印功能可能较少使用 MUI官方并为集成蓝牙打印功能 而且似乎对iPhone蓝牙打印的类库支持也不够完善 忙完一阶段后回顾下之前的工作 想想蓝牙打印功能折腾了够长时间了 写这
  • Django数据库orm操作以list形式获取数据库中某列所有值

    文章目录 问题 解决办法 方式一 方式二 方式三 写在最后 问题 如图所示 Django数据库中存储如下字段 这是在前端渲染出的数据 现在的需求是 要把factory这一列数据从后端数据库提取出来得到一个list方便后续的 select o
  • 几何画笔

    在看书时看到了这个概念 画笔可以分为几何画笔和装饰画笔 目前从CSDN以及MSDN上大致看了一下几何画笔的用法 代码如下 HPEN hPen NULL DWORD dwStyle PS GEOMETRIC PS DASHDOT PS END
  • HIT SC ADT and OOP

    ADT Abstract Data Types 在上学期的数据结构中我们已经接触过ADT 抽象数据型 抽象数据型是一个数学模型和在该模型上定义的操作的集合 在软件构造中ADT概念也类似 不过多了些值得注意的点 首先看一下MIT官网列出的几个
  • metasploit

    概念 Metasploit是一款开源的安全漏洞检测工具 可以帮助安全和IT专业人士识别安全性问题 验证漏洞的缓解措施 并管理专家驱动的安全性进行评估 提供真正的安全风险情报 这些功能包括智能开发 代码审计 Web应用程序扫描 社会工程 团队
  • 为什么重写equals还要重写hashcode

    为什么重写equals还要重写hashcode 1 简介 equals和hashcode都属于Object类的方法 其中hashcode为本地方法 object中equals是比较是否为同一对象 public boolean equals
  • Java集成微信小程序生成二维码传回前端,提供下载按钮

    1 后端调用方法获取AccessToken的工具类 import com alibaba fastjson2 JSON import com alibaba fastjson2 JSONObject import org springfra
  • 《数据结构初阶》用队列实现栈&&用栈实现队列的细致解析

    纵有千古 横有八方 目录 一 本章重点 二 队列实现栈 三 栈实现队列 四 解题思路总结 一 本章重点 用两个队列实现栈 用两个栈实现队列 解题思路总结 二 队列实现栈 我们有两个队列 入栈数据1 2 3 可以将数据入队列至队列一或者队列二
  • 如何让微pe上网_如何用U盘重装系统

    现如今电脑普及程度已经涉及到我们生活中的方方面面 日常生活和工作都离不开电脑 作为一个Window使用者 遇到问题时 能自己独立重装操作系统 是一件很有成就的事情 U盘重装系统是目前比较流行和简单的方法 比过去的使用光盘更加简易 小白也能轻

随机推荐

  • JavaScript-运算符篇

    目录 一 算数运算符 二 递增和递减运算符 1 前置递增 2 后置递增 三 比较运算符 四 逻辑运算符 1 逻辑与 2 逻辑或 3 逻辑非 5 短路运算 逻辑中断 6 赋值运算符 7 运算符优先级 8 流程控制 1 顺序机构 2 分支结构
  • 小朋友高矮排列-华为OD

    题目描述 现在有一队小朋友 他们高矮不同 我们以正整数数组表示这一队小朋友的身高 如数组 5 3 1 2 3 我们现在希望小朋友排队 以 高 矮 高 矮 顺序排列 每一个 高 位置的小朋友要比相邻的位置高或者相等 每一个 矮 位置的小朋友要
  • java.sql.SQLException: Access denied for user ‘root‘@‘localhost‘ (using password: YES)

    错误如下所示 查了一下发现是配置文件中的数据库密码错了 并且在代码生成器中 也要修改数据库 在查资料时发现 如果出现的错误是using password YES 那么应该是密码输错了 java sql SQLException Access
  • 深度学习实战12(进阶版)-利用Dewarp实现文本扭曲矫正

    大家好 我是微学AI 今天给大家介绍一下深度学习实战12 进阶版 利用Dewarp实现文本扭曲矫正 我们在生活中会看到一些拍摄扭曲的图片 我们在通过OCR识别的时候 因为扭曲的厉害 而无法识别 我们需要对图片进行处理 文件图像的变形有扭曲
  • HarmonyOS学习路之开发篇—多媒体开发(媒体数据管理开发)

    一 媒体数据管理开发概述 HarmonyOS媒体数据管理模块支持多媒体数据管理相关的功能开发 常见操作如 获取媒体元数据 截取帧数据等 在进行应用的开发前 开发者应了解以下基本概念 PixelMap PixelMap是图像解码后无压缩的位图
  • Javascirp异步编程

    在上一篇彻底弄清Javascirpt中的同步和异步一问当中 介绍了Javascirp代码执行的概念 同步和异步的原理 学习过Javascript语言的同学都知道 从Javascript诞生之日起 就是一门单线程 非阻塞的脚本语言 Javas
  • ArcGIS Server开发Web GIS新手体验

    原创作者 lt 不详 gt 一 前述 原创作品网址 http www vscodes com article 3 2379 html 以下针对于windows操作系统 net开发环境 ArcGIS Server是ESRI公司最新推出的服务器
  • java一行代码实现集合写入Excel表格生成数据

    这里使用maven构建项目 导入依赖
  • 高精度加法c++

    介绍 当我们加出来是一个特别大的数 开了long long都会爆的时候 我们就会用到高精度加法了 原题链接 讲解 其实高精度加法就是模拟的竖式运算 竖式运算会出现进位的情况 比如说最高位的这个1是进位 比原来的3位还多出1位 那么我们就应该
  • 语音去噪深度学习模型论文总结(大多基于transformer)

    深度学习模型 我总结了之前看的模型 并又寻找了基于transformer的模型 挑选了四个性能较好 评判标准是各种语音评价指标 该论文提出的模型与已有模型相比较得到的结果 的模型 其中前面三个是基于transformer的模型 最后一个是基
  • 晒问答

    1 如果好人没好报 还要不要做好人 如果做好人的意义是为了让自己有好报 那便永远逃不出世间规律的死循环 自己的命运和选择要牢牢掌握在自己手中 不做一个被世俗绑架来的好人 也不做一个害怕背负骂名的坏人 2 看书太少和不爱思考哪个更致命 给纯粹
  • Windows 解决端口占用方法

    查询9200端口 netstat nao findstr 9200 删除端口关联进程PID taskkill pid 11560 F
  • ORA-12505, TNS:listener does not currently know of SID given in connect desc

    出现以上的问题是无法识别SID 解决方法如下 1 找到以下目录 opt oracle product 10 2 0 db 1 network admin 修改listener ora find name listener ora即可找到该文
  • 带隔离变压器的DC/DC单端正激变换电路设计与Simulink仿真

    前期已经介绍了4种DC DC变换电路 这4种电路有一个共同特点 输入输出直接电气连接 之间没有做隔离措施 但是在实际应用中 由于电压等级的变换 安全 系统串并联等原因 开关电源的输入和输出之间需要进行电气隔离 在基本的非隔离DC DC变换电
  • R语言课程资料

    第一节 R语言简介 R语言简介 R 既是一种语言 R是一种解释性语言 也是一个软件由AT T贝尔实验室的S语言发展而来具有统计分析功能和强大的作图功能开源软件 目前在 R 网站上有 17500个程序包 涵盖了基础统计学 社会学 经济学 生态
  • 【ARM】在NUC977上搭建基于boa的嵌入式web服务器

    一 实验目的 搭建基于arm开发板的web服务端程序 通过网页控制开发板LED状态 二 boa简介 Boa服务器是一个小巧高效的web服务器 是一个运行于unix或linux下的 支持CGI的 适合于嵌入式系统的单任务的http服务器 源代
  • C# 调用SQL Server存储过程,传入参数,返回查询结果,更新dataGridView

    调用SQL Server存储过程 传入参数 返回查询结果 using SqlConnection conn new SqlConnection connectionString String cmdText Screen 存储过程名 Sql
  • Bible读经体会

    诸天述说 神的荣耀 穹苍传扬他的手段 诗篇19 1 花草树木在喊叫 耶和华造我的 数学从耶和华而来 自然界自然启示从耶和华而来 里面体现了耶和华的创意无限和思路周全 我们默默欣赏着观看着 今天阅读了创世纪的一点点体会 做下笔记 请勿用验证的
  • Shell--基础--01--介绍

    Shell 基础 01 介绍 1 Shell 环境 Shell 编程需要2个环境 文本编辑器 能解释执行的脚本解释器 2 Linux 的 Shell 常见种类 Bourne Shell usr bin sh或 bin sh Bourne A
  • python dataframe索引转成列_Pandas之DataFrame对象的列和索引之间的转化

    约定 import pandas as pd DataFrame对象的列和索引之间的转化 我们常常需要将DataFrame对象中的某列或某几列作为索引 或者将索引转化为对象的列 pandas提供了set index reset index