shauna570392

2020-10-27   阅读量: 903

Python

Pandas中loc、iloc与ix的区别

扫码加入数据分析学习群

Pandas提供了一些索引器(indexer)属性作为取值的方法。

from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all" #设置全部行输出


import pandas as pd
data = pd.Series(['a','b','c'],index = [1,3,5])
data
------------------------------------
1    a
3    b
5    c
dtype: object


第一种索引器是loc属性,表示取值和切片都是显示的:

data.loc[1]
data.loc[1:3]
------------------------------------
'a'

1    a
3    b
dtype: object

loc 在index的标签上进行索引,范围包括start和end。



第二种索引器是iloc属性,表示取值和切片都是Python形式的隐式索引:



'b'

3    b
5    c
dtype: object

iloc 在index的位置上进行索引,不包括end。


第三种取值属性是ix,它是前两种索引器的混合形式,在Series对象中ix等价于标准的[ ](Python列表)的取值方式,ix索引器主要用于DataFrame对象。ix 先在index的标签上索引,索引不到就在index的位置上索引(如果index非全整数),不包括end。

Python代码的设计原则之一是“显示优于隐式”。使用loc和iloc可以让代码更容易维护,可读性更高。


41.1726 2 0 关注作者 收藏

评论(0)


暂无数据

推荐课程

推荐帖子