pandas将DataFrame的列变成行索引
pandas提供了set_index方法可以将DataFrame的列(多列)变成行索引,通过reset_index方法可以将层次化索引的级别会被转移到列里面。
1、DataFrame的set_index方法
    data = pd.DataFrame(np.arange(,).reshape(,),index=["a","b","c"],columns=["A","B","C"])
    print(data)
    '''
       A  B  C
    a      
    b      
    c      
    '''
    #将列索引为B的列变成data的行索引
    print(data.set_index("B"))
    '''
      A  C
    B
    '''
    #获取行索引
    print(data.set_index("B").index)
    #Int64Index([, , ], 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
    '''
2、DataFrame的reset_index方法
data = pd.DataFrame(np.arange(,).reshape(,),index=["a","b","c"],columns=["A","B","C"])
    print(data)
    '''
       A  B  C
    a      
    b      
    c      
    '''
    print(data.set_index(["C"]))
    '''
       A  B
    C
    '''
    #相对于data来说行索引从原来的a、b、c变成了0、、
    #在使用set_index方法的时候行索引就已经被修改了
    print(data.set_index(["C"]).reset_index())
    '''
       C  A  B
    '''
    print(data.index)
    #Index(['a', 'b', 'c'], dtype='object')
    print(data.set_index(["C"]).reset_index().index)
    #RangeIndex(start=, stop=, step=)
    print(data.set_index(["C"]).reset_index().columns)
    #Index(['C', 'A', 'B'], dtype='object')
参考:https://blog.csdn.net/sinat_29957455/article/details/79038658
pandas将DataFrame的列变成行索引的更多相关文章
- sqlserver 字段内容做in条件 列变成行显示
		
sqlserver中 字段内容做in条件用到方法:CHARINDEX(value,situation) 列变行显示用到:stuff 详情自行查找. 例子: stuff((select ','+name ...
 - Oracle中decode函数 列变成行
		
create table t_class(c_Id number(10) primary key ,stuName varchar2(50), --人名c_Name varchar2(50), ...
 - pandas  对dataframe一列中某些值进行处理
		
https://github.com/Bifzivkar/Boutique-Travel-Services-Predict/blob/master/feature/5_extract_feature. ...
 - Pandas之Dataframe叠加,排序,统计,重新设置索引
		
Pandas之Dataframe索引,排序,统计,重新设置索引 一:叠加 import pandas as pd a_list = [df1,df2,df3] add_data = pd.concat ...
 - pandas取dataframe特定行/列
		
1. 按列取.按索引/行取.按特定行列取 import numpy as np from pandas import DataFrame import pandas as pd df=DataFram ...
 - pandas之DataFrame创建、索引、切片等基础操作
		
知识点 Series只有行索引,而DataFrame对象既有行索引,也有列索引 行索引,表明不同行,横向索引,叫index,0轴,axis=0 列索引,表明不同列,纵向索引,叫columns,1轴,a ...
 - SQL Server如何在变长列上存储索引
		
这篇文章我想谈下SQL Server如何在变长列上存储索引.首先我们创建一个包含变长列的表,在上面定义主键,即在上面定义了聚集索引,然后往里面插入80000条记录: -- Create a new t ...
 - pandas中DataFrame的ix,loc,iloc索引方式的异同
		
pandas中DataFrame的ix,loc,iloc索引方式的异同 1.loc: 按照标签索引,范围包括start和end 2.iloc: 在位置上进行索引,不包括end 3.ix: 先在inde ...
 - python 数据处理学习pandas之DataFrame
		
请原谅没有一次写完,本文是自己学习过程中的记录,完善pandas的学习知识,对于现有网上资料的缺少和利用python进行数据分析这本书部分知识的过时,只好以记录的形势来写这篇文章.最如果后续工作定下来 ...
 
随机推荐
- Linux命令缩写的全称
			
[目录|文件] ls : list(列出目录内容) pwd : print work directory(打印当前目录,现示当前工作目录的绝对路径) cd : change directory(改变目 ...
 - java的代理和动态代理简单测试
			
什么叫代理与动态代理? 1.以买火车票多的生活实例说明. 因为天天调bug所以我没有时间去火车票,然后就给火车票代理商打电话订票,然后代理商就去火车站给我买票.就这么理解,需要我做的事情,代理商帮我办 ...
 - PHPMailer命令执行及任意文件读取漏洞
			
今天在thinkphp官网闲逛,无意下载了一套eduaskcms,查看了一下libs目录中居然存在PHPMailer-5.2.13,想起了之前看到的PHPMailer的漏洞,可惜这套CMS只提供了一个 ...
 - iOS开发-为UITableViewCell添加横线
			
在开发过程中经常会遇到设计稿中Cell分割线样式和系统自带的样式差别很大,如何实现这里做下总结,主要包括如下两步: 1. 取消TableView默认的分割线样式 _tableView.separato ...
 - 高并发应对:淘宝CDN缓存服务器部署探秘
			
转自:http://server.chinabyte.com/6/12663506.shtml “好,时间到,开抢!”坐在电脑前早已等待多时的宋兰(化名)一看时间已到2011年11月11日零时,便迫不 ...
 - wireshark----linux
			
1.[root@lc~]# tshark Running as user "root" and group "root". This could be da ...
 - 安装ubuntu后,你的屏幕尺寸太小,无法设置,该怎么解决
			
安装完虚拟机之后,你的Ubuntu可能会在尺寸很小,(这种情况可能有,可能没有) 想要点击设置,选中Display里的分辨率下拉框,但是却因为这个窗口太大,无法点击apply按钮.悲剧啦!!! Ctr ...
 - iOS 在已有项目添加CoreData
			
本文转载至 http://cnbin.github.io/blog/2016/03/11/ios-zai-yi-you-xiang-mu-tian-jia-coredata/ 如果是新项目很好说,新建 ...
 - JS中方法判断存在
			
function test(){ alert("test"); } if(typeof test!='undefined') {alert(1) test(); } else {a ...
 - Android自定义组件——四个方向滑动的菜单实现
			
今天无意中实现了一个四个方向滑动的菜单,感觉挺好玩,滑动起来很顺手,既然已经做出来了就贴出来让大家也玩弄一下. 一.效果演示 (说明:目前没有安装Android模拟器,制作的动态图片太卡了,就贴一下静 ...