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 import自定义模块方法
Feb 12 Python
Python中isnumeric()方法的使用简介
May 19 Python
python中返回矩阵的行列方法
Apr 04 Python
利用Python实现原创工具的Logo与Help
Dec 03 Python
Flask框架踩坑之ajax跨域请求实现
Feb 22 Python
django的auth认证,authenticate和装饰器功能详解
Jul 25 Python
Python远程开发环境部署与调试过程图解
Dec 09 Python
对tensorflow中的strides参数使用详解
Jan 04 Python
Jupyter notebook无法导入第三方模块的解决方式
Apr 15 Python
在keras中model.fit_generator()和model.fit()的区别说明
Jun 17 Python
python实现猜拳游戏项目
Nov 30 Python
python使用matplotlib绘制图片时x轴的刻度处理
Aug 30 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 如何利用phpexcel导入数据库
2013/08/24 PHP
AJAX的使用方法详解
2017/04/29 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
2017/09/17 PHP
javascript 页面只自动刷新一次
2009/07/10 Javascript
简单实用的反馈表单无刷新提交带验证
2013/11/15 Javascript
利用JS判断用户是否上网(连接网络)
2013/12/23 Javascript
js如何获取兄弟、父类等节点
2014/01/06 Javascript
jquery提交form表单简单示例分享
2014/03/03 Javascript
jquery动态调整div大小使其宽度始终为浏览器宽度
2014/06/06 Javascript
jQuery实现时尚漂亮的弹出式对话框实例
2015/08/07 Javascript
微信小程序开发实战教程之手势解锁
2016/11/18 Javascript
fckeditor部署到weblogic出现xml无法读取及样式不能显示问题的解决方法
2017/03/24 Javascript
深入理解nodejs中Express的中间件
2017/05/19 NodeJs
React Native之TextInput组件解析示例
2017/08/22 Javascript
vue el-table实现自定义表头
2019/12/11 Javascript
JS实现网站楼层导航效果代码实例
2020/06/16 Javascript
python实现在windows服务中新建进程的方法
2015/06/30 Python
Python实现简单字典树的方法
2016/04/29 Python
Python内建函数之raw_input()与input()代码解析
2017/10/26 Python
用Python写一段用户登录的程序代码
2018/04/22 Python
Python开发的十个小贴士和技巧及长常犯错误
2018/09/27 Python
详解Python字典的操作
2019/03/04 Python
Python 的AES加密与解密实现
2019/07/09 Python
django中上传图片分页三级联动效果的实现代码
2019/08/30 Python
python实现画循环圆
2019/11/23 Python
Python 读取 YUV(NV12) 视频文件实例
2019/12/09 Python
Python调用shell cmd方法代码示例解析
2020/06/18 Python
NYX Professional Makeup英国官网:美国平价专业彩妆品牌
2019/11/13 全球购物
信息总监管理职责范本
2014/03/08 职场文书
销售人员求职信
2014/07/22 职场文书
2014党员民主评议个人思想剖析发言
2014/09/19 职场文书
公安局负责人查摆问题及整改方案
2014/09/27 职场文书
淮阳太昊陵导游词
2015/02/10 职场文书
2015年大学生暑期实习报告
2015/07/13 职场文书
社区服务理念口号
2015/12/25 职场文书
MySQL子查询中order by不生效问题的解决方法
2021/08/02 MySQL