美文网首页
关于pandas索引的小记

关于pandas索引的小记

作者: SeekerLinJunYu | 来源:发表于2019-04-30 09:51 被阅读0次

pandas中DataFrame结构的索引分为行索引和列索引,因此在不同的用法下索引指代的操作也是不一样的.这里记录一下,后面忘记了再回来看.

  1. np.array 和 pd.Series的结构都可以通过比较运算符拿到布尔索引.这是python list不具有的性质.
# np.array
In: a = np.array([1,5,7,8,9,10])
In: a_bool = a>8            # list 无法实现这样的操作
In: a_bool
Out: array([False, False, False, False,  True,  True])
In: data = pd.DataFrame(np.arange(16).reshape(4,4),index=['Ohio', 'Colorado', 'Utah', 'New York'],
              columns=['one', 'two', 'three', 'four'])
Out:
      one   two three   four
Ohio    0   1   2   3
Colorado    4   5   6   7
Utah    8   9   10  11
New York    12  13  14  15

In: data['three'] >5        # 能够拿到bool索引
Out:  hio          False
      Colorado     True
      Utah         True
      New York     True
      Name: three, dtype: bool

In: data[data['three'] >5]          # 这个地方DataFrame传入的索引指代行
Out: 
                one  two    three   four
      Colorado   4  5           6   7
      Utah       8  9           0   11
      New York  12  13          14  15
  1. 关于DataFrame自身的索引也有多种方式
# 通过切片索引,拿到的是行
In : data[:2]  
Out: 
          one  two  three  four
Ohio        0    1      2     3
Colorado    4    5      6     7
# 通过列标签索引拿到的是列
In : data[['three', 'one']]
Out: 
          three  one
Ohio          2    0
Colorado      6    4
Utah         10    8
New York     14   12

# 通过boolean量索引拿到的依然是行
In: data[data['three'] >5]          
Out: 
                one  two    three   four
      Colorado   4  5           6   7
      Utah       8  9           0   11
      New York  12  13          14  15
# 还可以通过整体的比较运算 拿到每一个位置的bool量
In [134]: data < 5
Out[134]: 
            one    two  three   four
Ohio       True   True   True   True
Colorado   True  False  False  False
Utah      False  False  False  False
New York  False  False  False  False

In [135]: data[data < 5] = 0

In [136]: data
Out[136]: 
          one  two  three  four
Ohio        0    0      0     0
Colorado    0    5      6     7
Utah        8    9     10    11
New York   12   13     14    15

相关文章

  • 关于pandas索引的小记

    pandas中DataFrame结构的索引分为行索引和列索引,因此在不同的用法下索引指代的操作也是不一样的.这里记...

  • 时间处理

    pandas小记:pandas时间序列分析和处理Timeserieshttps://blog.csdn.net/p...

  • Pandas数据操作

    Pandas数据操作 Series索引 行索引 切片索引 不连续索引 布尔索引 DataFrame索引 列索引 不...

  • pandas学习-2

    Pandas数据结构Series:索引 位置下标 / 标签索引 / 切片索引 / 布尔型索引

  • 详解pandas获取Dataframe元素值的几种方法

    1、pandas.DataFrame.at[http://pandas.dataframe.at/] 根据行索引和...

  • pandas 使用

    1. Series 使用 2. pandas:索引 pandas:数据对齐,相加 3. pandas:DataF...

  • [Python] Pandas中的各种操作(持续更新)

    Pandas dataFrame Series根据值获取索引,根据索引获取值

  • Pandas常用功能

    Pandas重新索引 reindex 算数运算和数据对齐 pandas的一个重要功能,就是可以对不同索引的对象进行...

  • Pandas 层次化索引

    pandas的层次化索引 层次化索引是pandas的一项比较重要的功能,它能够让你在一个轴上拥有多个索引级别,另一...

  • 2.3 数据结构Series:索引

    【课程2.3】 Pandas数据结构Series:索引位置下标 / 标签索引 / 切片索引 / 布尔型索引 1-...

网友评论

      本文标题:关于pandas索引的小记

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