pandas带有重复索引操作方法


Posted in Python onJune 08, 2018

有的时候,可能会遇到表格中出现重复的索引,在操作重复索引的时候可能要注意一些问题。

一、判断索引是否重复

a、Series索引重复判断

s = Series([1,2,3,4,5],index=["a","a","b","b","c"]) 
print(s.index.is_unique) 
#False

Series.index.is_unique为False表示索引重复。

b、DataFrame索引重复判断

a = np.arange(9).reshape(3,3) 
data = DataFrame(a,index=["a","b","c"],columns=["one","two","one"]) 
#判断行索引是否重复 
print(data.index.is_unique) 
#True 
#判断列索引是否重复 
print(data.columns.is_unique) 
#False

二、索引取值

如果一个索引对应多个值,Series返回的是一个Series。如果一个索引对应一个值的时候,Series返回的是一个标量,DataFrame返回的是始终是一个DataFrame。

a、Series的索引取值

s = Series([1, 2, 3, 4, 5], index=["a", "a", "b", "b", "c"])
 print(type(s["a"]))
 #<class 'pandas.core.series.Series'>
 print(s["a"])
 '''
 a 1
 a 2
 '''
 #选取第一个a
 print(s[:1])
 #a 1
 print(s[[0]])
 #a 1

b、DataFrame的索引取值

a = np.arange(9).reshape(3,3)
 data = DataFrame(a,index=["a","b","b"],columns=["one","two","one"])
 #对行进行选取
 print(type(data.ix["b"]))
 #<class 'pandas.core.frame.DataFrame'>
 print(data.ix["b"])#与data.xs("b")等价
 '''
 one two one
 b 3 4 5
 b 6 7 8
 '''
 #选取第二行
 print(type(data.ix[1:2]))#与data[1:2]等价
 #<class 'pandas.core.frame.DataFrame'>
 print(data.ix[1:2])
 #b 3 4 5
 print(data.ix[[1]])
 #b 3 4 5

 #对列进行选取
 print(data["one"])#等价于data.one 或 data.xs("one",axis=1)
 '''
 one one
 a 0 2
 b 3 5
 b 6 8
 '''
 #选取第一列
 print(data.ix[:,0])
 '''
 a 0
 b 3
 b 6
 '''
 print(data.ix[:,:1])
 '''
 one
 a 0
 b 3
 b 6
 '''

以上这篇pandas带有重复索引操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python检测lvs real server状态
Jan 22 Python
常用python数据类型转换函数总结
Mar 11 Python
在Python程序和Flask框架中使用SQLAlchemy的教程
Jun 06 Python
python多进程实现进程间通信实例
Nov 24 Python
Flask框架实现给视图函数增加装饰器操作示例
Jul 16 Python
python一行sql太长折成多行并且有多个参数的方法
Jul 19 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
Mar 14 Python
python实现ssh及sftp功能(实例代码)
Mar 16 Python
python 负数取模运算实例
Jun 03 Python
Django权限控制的使用
Jan 07 Python
Python实现京东抢秒杀功能
Jan 25 Python
python全面解析接口返回数据
Feb 12 Python
使用python爬取B站千万级数据
Jun 08 #Python
pandas表连接 索引上的合并方法
Jun 08 #Python
详谈Pandas中iloc和loc以及ix的区别
Jun 08 #Python
python实现人人自动回复、抢沙发功能
Jun 08 #Python
利用Python写一个爬妹子的爬虫
Jun 08 #Python
python os用法总结
Jun 08 #Python
Python DataFrame 设置输出不显示index(索引)值的方法
Jun 07 #Python
You might like
PHP读写文件的方法(生成HTML)
2006/11/27 PHP
php中常用字符串处理代码片段整理
2011/11/07 PHP
php+mysqli预处理技术实现添加、修改及删除多条数据的方法
2015/01/30 PHP
php的闭包(Closure)匿名函数初探
2016/02/14 PHP
centos 7.2下搭建LNMP环境教程
2016/11/20 PHP
javascript web对话框与弹出窗口
2009/02/22 Javascript
JavaScript DOM学习第八章 表单错误提示
2010/02/19 Javascript
基于jQuery的动态表格插件
2011/03/28 Javascript
简单实用的反馈表单无刷新提交带验证
2013/11/15 Javascript
javascript计算当月剩余天数(天数计算器)示例代码
2014/01/09 Javascript
将字符串中由空格隔开的每个单词首字母大写
2014/04/06 Javascript
js进行表单验证实例分析
2015/02/10 Javascript
ionic隐藏tabs的方法
2016/08/29 Javascript
ionic2打包android时gradle无法下载的解决方法
2017/04/05 Javascript
ES6新特性一: let和const命令详解
2017/04/20 Javascript
Vue.js基础指令实例讲解(各种数据绑定、表单渲染大总结)
2017/07/03 Javascript
jQuery实现的淡入淡出图片轮播效果示例
2018/08/29 jQuery
jQuery设置下拉框显示与隐藏效果的方法分析
2019/09/15 jQuery
vue项目出现页面空白的解决方案
2019/10/31 Javascript
vue递归获取父元素的元素实例
2020/08/07 Javascript
python 编程之twisted详解及简单实例
2017/01/28 Python
Pycharm学习教程(4) Python解释器的相关配置
2017/05/03 Python
使用python对多个txt文件中的数据进行筛选的方法
2019/07/10 Python
Python学习笔记之While循环用法分析
2019/08/14 Python
将tensorflow.Variable中的某些元素取出组成一个新的矩阵示例
2020/01/04 Python
Python requests模块session代码实例
2020/04/14 Python
详解向scrapy中的spider传递参数的几种方法(2种)
2020/09/28 Python
python3爬虫中引用Queue的实例讲解
2020/11/24 Python
Under Armour澳大利亚官网:美国知名的高端功能性运动品牌
2018/02/22 全球购物
印度首个本地在线平台:nearbuy
2019/03/28 全球购物
PatPat香港:婴童服饰和亲子全家装在线购物
2020/09/27 全球购物
应届护士推荐信
2013/11/16 职场文书
2015年宣传工作总结
2015/04/08 职场文书
庆七一主持词
2015/06/29 职场文书
七年级作文之英语老师
2019/10/28 职场文书
Redis 报错 error:NOAUTH Authentication required
2022/05/15 Redis