pandas带有重复索引操作方法

 更新时间:2018年06月08日 08:53:56   作者:修炼之路  
今天小编就为大家分享一篇pandas带有重复索引操作方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

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

一、判断索引是否重复

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带有重复索引操作方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • Pandas之数据追加df.append方式

    Pandas之数据追加df.append方式

    这篇文章主要介绍了Pandas之数据追加df.append方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • PyCharm下载和安装详细步骤

    PyCharm下载和安装详细步骤

    这篇文章主要介绍了PyCharm下载和安装详细步骤,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • Python中选择结构实例讲解

    Python中选择结构实例讲解

    在本篇文章里小编给大家整理了关于Python选择结构的基础知识点及相关实例,有需要的朋友们可以学习参考下。
    2022-11-11
  • python os.fork() 循环输出方法

    python os.fork() 循环输出方法

    今天小编就为大家分享一篇python os.fork() 循环输出方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-08-08
  • Python实现读取Excel表数据并转为JSON格式文件

    Python实现读取Excel表数据并转为JSON格式文件

    这篇文章主要为大家详细介绍了Python如何使用pandas库读取Excel表并将其转为JSON格式文件,文中的示例代码讲解详细,感兴趣的小伙伴可以参考下
    2025-04-04
  • Python 实现opencv所使用的图片格式与 base64 转换

    Python 实现opencv所使用的图片格式与 base64 转换

    今天小编就为大家分享一篇Python 实现opencv所使用的图片格式与 base64 转换,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • 详解Python中with语句的用法

    详解Python中with语句的用法

    这篇文章主要介绍了Python中with语句的用法,with语句的使用是Python学习过程当中的基础知识,本文来自于IBM官方技术文档,需要的朋友可以参考下
    2015-04-04
  • Python中内置的日志模块logging用法详解

    Python中内置的日志模块logging用法详解

    Python的logging模块提供了记录程序运行情况的日志功能,类似于Apache的log4j,很好很强大,这里我们就来看一下Python中内置的日志模块logging用法详解
    2016-07-07
  • 源码解析python的内存回收机制

    源码解析python的内存回收机制

    在CPython中,引用计数是用来管理内存的一种方法,当一个Python对象的引用计数变为零时,表示没有其他对象引用该对象,因此可以安全地将其内存回收,需要的朋友可以参考下
    2023-04-04
  • 详解Python定时器Timer的使用及示例

    详解Python定时器Timer的使用及示例

    这篇文章主要介绍了详解Python定时器的使用及示例,Timer定时器源码实现,和自定义一个线程方式一样,都是继承Thread类,重写了run()方法,只是实现的功能是延时执行一个函数或方法,需要的朋友可以参考下
    2023-05-05

最新评论