美文网首页
Pandas的基本功能(七)

Pandas的基本功能(七)

作者: 5f2a6061653d | 来源:发表于2018-12-05 20:44 被阅读7次

    带有重复值的索引

    在之前的学习中,无论是数组还是字典,都要求有唯一的索引值,虽然Pandas中的许多函数都要求索引值唯一,但这不是强制性的要求,因此,用户在创建Series对象和DataFrame对象时,都有可能设置重复的索引值,具体示例如下所示:

    In [43]: from pandas import Series,DataFrame
    In [44]: se = Series(range(4),index = ['a','a','b','b'])
    

    上述代码是创建存在重复索引值的Series对象,运行结果如下所示:

    In [45]: se
    Out[45]:
    a 0
    a 1
    b 2
    b 3
    dtype: int64
    

    从上述运行结果可以看出,se对象中含有两个索引为“a”和两个索引为“b”的值,因此在访问索引为“a”或“b”的值时,返回的结果往往与预想不同,当某个索引对应多个值,则会返回一个Series对象,而非一个标量值,具体示例如下所示:

    In [46]: se['a']
    Out[46]:
    a 0
    a 1
    dtype: int64
    In [47]: se['b']
    Out[47]:
    b 2
    b 3
    dtype: int64
    

    当不知Series对象中是否含有重复索引值时,可通过索引的is_unique属性来检测,具体示例如下所示:

    In [48]: se.index.is_unique
    Out[48]: False
    

    DataFrame对象同样也会遇到上述问题,因此,在创建Series或DataFrame对象时,没有特殊要求就应将索引值设置成唯一的。

    相关文章

      网友评论

          本文标题:Pandas的基本功能(七)

          本文链接:https://www.haomeiwen.com/subject/xhsbgftx.html