首页技术文章正文

Python培训:使用Pandas提供的方法操作索引

更新时间:2022-09-05 来源:黑马程序员 浏览量:

  虽然DataFrame操作索引能够满足基本数据查看请求,但是仍然不够灵活。为此,Pandas库中提供了操作索引的方法来访问数据,具体包括:

  ♦loc:基于标签索引(索引名称,如a、b等),用于按标签选取数据。当执行切片操作时,既包含起始索引,也包含结束索引。

  ♦loc:基于位置索引(整数索引,从0到length-1),用于按位置选取数据。当执行切片操作时,只包含起始索引,不包含结束索引。

  iloc方法主要使用整数来索引数据,而不能使用字符标签来索引数据。而loc方法恰恰相反,它只能使用字符标签来索引数据,而不能使用整数来索引数据。不过,当DataFrame对象的行索引或列索引使用的是整数时,则其就可以使用整数来索引。

  假设,现在有一个DataFrame对象,具体代码如下。

In [39]: arr=np.arrange(16) .reshape(4, 4)
         dataframe_obj=pd.DataFrame(arr, columns=['a', 'b', 'c', 'd'])
         dataframe_obj
Out[39]:
    a   b   c   d
0   0   1   2   3
1   4   5   6   7
2   8   9   10  11
3   12  13  14  15

  接下来,我们通过一段示例程序来演示如何使用上述方法来获取DataFrame中多列的数据,具体代码如下。

In [40]: dataframe_obj.loc[:, ["c", "a"]]
In [41]: dataframe_obj.iloc[:, [2,0]]

  它们两个输出的结果一样,具体如下:

    c   a
0   2   0
1   6   4
2   10  8
3   14  12

  还可以通过loc方法和iloc方法使用花式索引来访问数据,具体代码如下。

In [43]: dataframe_obj.loc[1:2, ['b', 'c']]
In [44]: dataframe_obj.iloc[1:3, [1, 2]]

  它们两个输出的结果也是一样的,具体如下:

    b    c
1   5    6
2   9    10


分享到:
在线咨询 我要报名
和我们在线交谈!