pandas将DataFrame的列变成行索引的方法

 更新时间:2018年04月10日 09:44:31   作者:修炼之路  
下面小编就为大家分享一篇pandas将DataFrame的列变成行索引的方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

pandas提供了set_index方法可以将DataFrame的列(多列)变成行索引,通过reset_index方法可以将层次化索引的级别会被转移到列里面。

1、DataFrame的set_index方法

  data = pd.DataFrame(np.arange(1,10).reshape(3,3),index=["a","b","c"],columns=["A","B","C"])
  print(data)
  '''
    A B C
  a 1 2 3
  b 4 5 6
  c 7 8 9
  '''
  #将列索引为B的列变成data的行索引
  print(data.set_index("B"))
  '''
   A C
  B
  2 1 3
  5 4 6
  8 7 9
  '''
  #获取行索引
  print(data.set_index("B").index)
  #Int64Index([2, 5, 8], dtype='int64', name='B')
  #获取列索引
  print(data.set_index("B").columns)
  #Index(['A', 'C'], dtype='object')
  #将列索引为A和C的列变成行索引,层次化索引
  print(data.set_index(["A","C"]))
  '''
     B
  A C
  1 3 2
  4 6 5
  7 9 8
  '''

2、DataFrame的reset_index方法

  data = pd.DataFrame(np.arange(1,10).reshape(3,3),index=["a","b","c"],columns=["A","B","C"])
  print(data)
  '''
    A B C
  a 1 2 3
  b 4 5 6
  c 7 8 9
  '''
  print(data.set_index(["C"]))
  '''
    A B
  C
  3 1 2
  6 4 5
  9 7 8
  '''
  #相对于data来说行索引从原来的a、b、c变成了0、1、2
  #在使用set_index方法的时候行索引就已经被修改了
  print(data.set_index(["C"]).reset_index())
  '''
    C A B
  0 3 1 2
  1 6 4 5
  2 9 7 8
  '''
  print(data.index)
  #Index(['a', 'b', 'c'], dtype='object')
  print(data.set_index(["C"]).reset_index().index)
  #RangeIndex(start=0, stop=3, step=1)
  print(data.set_index(["C"]).reset_index().columns)
  #Index(['C', 'A', 'B'], dtype='object')

以上这篇pandas将DataFrame的列变成行索引的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Python的垃圾回收机制深入分析

    Python的垃圾回收机制深入分析

    这篇文章主要介绍了Python的垃圾回收机制,有助于深入的理解Python的内存分配与回收机制,需要的朋友可以参考下
    2014-07-07
  • Python占用的内存优化教程

    Python占用的内存优化教程

    这篇文章主要给大家介绍了关于Python占用的内存优化教程,文中通过示例代码介绍的非常详细,对大家学习或者使用Python具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-07-07
  • Windows下用py2exe将Python程序打包成exe程序的教程

    Windows下用py2exe将Python程序打包成exe程序的教程

    这篇文章主要介绍了Windows下用py2exe将Python程序打包成exe程序的教程,文中主要针对Python3.x版本进行说明,需要的朋友可以参考下
    2015-04-04
  • Python实例一个类背后发生了什么

    Python实例一个类背后发生了什么

    Python实例一个类背后发生了什么,本文为大家一一列出,感兴趣的朋友可以参考一下
    2016-02-02
  • 在Python中使用dict和set方法的教程

    在Python中使用dict和set方法的教程

    这篇文章主要介绍了在Python中使用dict和set方法的教程,dict字典是Python中的重要基础知识,set与其类似,需要的朋友可以参考下
    2015-04-04
  • Python Flask 请求数据获取响应详解

    Python Flask 请求数据获取响应详解

    这篇文章主要介绍了Python Flask请求数据获取响应的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-10-10
  • Python读取Excel绘制直方图的方法

    Python读取Excel绘制直方图的方法

    这篇文章主要介绍了Python读取Excel绘制直方图,以下将详细介绍如何使用 Python 的 pyecharts、matplotlib 和 seaborn 三个库从 Excel 中读取数据并绘制直方图(Histogram),需要的朋友可以参考下
    2025-04-04
  • Python tkinter label 更新方法

    Python tkinter label 更新方法

    今天小编就为大家分享一篇Python tkinter label 更新方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-10-10
  • python动态网站爬虫实战(requests+xpath+demjson+redis)

    python动态网站爬虫实战(requests+xpath+demjson+redis)

    本文主要介绍了python动态网站爬虫实战(requests+xpath+demjson+redis),文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • Python实现优先级队列结构的方法详解

    Python实现优先级队列结构的方法详解

    优先级队列(priority queue)是0个或多个元素的集合,每个元素都有一个优先权,接下来就来看一下简洁的Python实现优先级队列结构的方法详解:
    2016-06-06

最新评论