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 相关文章推荐
pycharm 使用心得(一)安装和首次使用
Jun 05 Python
利用Python的Django框架中的ORM建立查询API
Apr 20 Python
python获取指定目录下所有文件名列表的方法
May 20 Python
python修改list中所有元素类型的三种方法
Apr 09 Python
对python添加模块路径的三种方法总结
Oct 16 Python
pyqt5 QProgressBar清空进度条的实例
Jun 21 Python
Python 音频生成器的实现示例
Dec 24 Python
python用WxPython库实现无边框窗体和透明窗体实现方法详解
Feb 21 Python
浅谈Pytorch中的自动求导函数backward()所需参数的含义
Feb 29 Python
pytorch加载语音类自定义数据集的方法教程
Nov 10 Python
sklearn中的交叉验证的实现(Cross-Validation)
Feb 22 Python
pytorch实现加载保存查看checkpoint文件
Jul 15 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之CodeIgniter学习笔记
2013/06/17 PHP
MacOS 安装 PHP的图片裁剪扩展Tclip
2015/03/25 PHP
CodeIgniter分页类pagination使用方法示例
2016/03/28 PHP
PHP使用ActiveMQ实例
2018/02/05 PHP
实例讲解php将字符串输出到HTML
2019/01/27 PHP
利用404错误页面实现UrlRewrite的实现代码
2008/08/20 Javascript
JQuery读取XML文件数据并显示的实现代码
2009/12/16 Javascript
jquery动画4.升级版遮罩效果的图片走廊--带自动运行效果
2012/08/24 Javascript
javascript 中String.match()与RegExp.exec()的区别说明
2013/01/10 Javascript
JS实现至少包含字母、大小写数字、字符的密码等级的两种方法
2015/02/03 Javascript
Vuejs 页面的区域化与组件封装的实现
2017/09/11 Javascript
详解基于iview-ui的导航栏路径(面包屑)配置
2019/02/22 Javascript
原生javascript自定义input[type=radio]效果示例
2019/08/27 Javascript
vue中 this.$set的用法详解
2019/09/06 Javascript
Vuex的实战使用详解
2019/10/31 Javascript
[02:16]完美世界DOTA2联赛PWL S3 集锦第三期
2020/12/21 DOTA
深入理解Python 代码优化详解
2014/10/27 Python
Python中支持向量机SVM的使用方法详解
2017/12/26 Python
pygame实现俄罗斯方块游戏(基础篇1)
2019/10/29 Python
Python numpy.zero() 初始化矩阵实例
2019/11/27 Python
Python IDLE或shell中切换路径的操作
2020/03/09 Python
基于canvas的骨骼动画的示例代码
2018/06/12 HTML / CSS
高清屏中使用Canvas绘图出现模糊的问题及解决方法
2019/06/03 HTML / CSS
中国茶叶、茶具一站式网上购物商城:醉品茶城
2018/07/03 全球购物
全球高级音频和视频专家:HiDef Lifestyle
2019/08/02 全球购物
英国电信商店:BT Shop
2019/12/17 全球购物
衰败城市英国官网:Urban Decay英国
2020/04/29 全球购物
Linux操作面试题
2012/05/16 面试题
软件测试有哪些?什么是配置项?
2012/02/12 面试题
毕业生个人的求职信范文
2013/12/03 职场文书
幼儿教师师德演讲稿
2014/05/06 职场文书
优秀毕业生的求职信
2014/07/21 职场文书
专业技术人员年度考核评语
2014/12/31 职场文书
2015年党风廉政建设工作总结
2015/04/09 职场文书
《蓝鲸的眼睛》读后感5篇
2020/01/15 职场文书
Web前端:CSS最强总结 附详细代码
2021/03/31 HTML / CSS