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记录详细调用堆栈日志的方法
May 05 Python
Python引用传值概念与用法实例小结
Oct 07 Python
python好玩的项目—色情图片识别代码分享
Nov 07 Python
Python语言描述连续子数组的最大和
Jan 04 Python
python打包生成的exe文件运行时提示缺少模块的解决方法
Oct 31 Python
Python生成MD5值的两种方法实例分析
Apr 26 Python
django-初始配置(纯手写)详解
Jul 30 Python
利用pyecharts实现地图可视化的例子
Aug 12 Python
Python列表元素常见操作简单示例
Oct 25 Python
Django框架HttpResponse对象用法实例分析
Nov 01 Python
Python TCP通信客户端服务端代码实例
Nov 21 Python
Python开发企业微信机器人每天定时发消息实例
Mar 17 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
zf框架的Filter过滤器使用示例
2014/03/13 PHP
PHP生成指定随机字符串的简单实现方法
2015/04/01 PHP
thinkPHP下ueditor的使用方法详解
2015/12/26 PHP
PHP数学运算函数大汇总(经典值得收藏)
2016/04/01 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
thinkPHP框架乐观锁和悲观锁实例分析
2019/10/30 PHP
js网页实时倒计时精确到秒级
2014/02/10 Javascript
javascript操作字符串的原生方法
2014/12/22 Javascript
Jquery实现动态切换图片的方法
2015/05/18 Javascript
js编写贪吃蛇的小游戏
2020/08/24 Javascript
js入门之Function函数的使用方法【新手必看】
2016/11/22 Javascript
JS简单实现表格排序功能示例
2016/12/20 Javascript
jQuery实现鼠标经过显示动画边框特效
2017/03/24 jQuery
JavaScript函数表达式详解及实例
2017/05/05 Javascript
vue实现长图垂直居上 vue实现短图垂直居中
2017/10/18 Javascript
vue cli升级webapck4总结
2018/04/04 Javascript
JS基于ES6新特性async await进行异步处理操作示例
2019/02/02 Javascript
使用p5.js临摹动态图片
2019/11/04 Javascript
微信小程序新闻网站详情页实例代码
2020/01/10 Javascript
axios封装与传参示例详解
2020/10/18 Javascript
[07:09]DOTA2-DPC中国联赛 正赛 Ehome vs Elephant 选手采访
2021/03/11 DOTA
用ReactJS和Python的Flask框架编写留言板的代码示例
2015/12/19 Python
Python字符串、元组、列表、字典互相转换的方法
2016/01/23 Python
Python简单实现TCP包发送十六进制数据的方法
2016/04/16 Python
Python编程实现蚁群算法详解
2017/11/13 Python
详解python3中tkinter知识点
2018/06/21 Python
numpy.std() 计算矩阵标准差的方法
2018/07/11 Python
Python简单处理坐标排序问题示例
2019/07/11 Python
英国受欢迎的运动鞋和街头服装商店:Footasylum
2018/06/12 全球购物
维多利亚的秘密官方网站:Victoria’s Secret
2018/10/24 全球购物
Hotels.com英国:全球领先的酒店住宿提供商
2019/01/24 全球购物
来自世界各地的饮料:Flavourly
2019/05/06 全球购物
初中音乐教学反思
2014/01/12 职场文书
《假如》教学反思
2014/04/17 职场文书
教育项目合作协议书格式
2014/10/17 职场文书
NGINX 权限控制文件预览和下载的实现原理
2022/01/18 Servers