大熊猫中的“iloc”和“loc”是啥?

Posted

技术标签:

【中文标题】大熊猫中的“iloc”和“loc”是啥?【英文标题】:What are 'iloc' and 'loc' in pandas?大熊猫中的“iloc”和“loc”是什么? 【发布时间】:2020-07-09 03:21:08 【问题描述】:

我听说有人说“iloc”或“loc”是一种方法/函数。但是对于函数或方法,我们总是使用 () 括号。

我想了解: 如果 iloc/loc 是函数/方法,那我们为什么不用 () 括号呢? 另外,如果它们不是函数/方法,那么它们是什么以及如何理解它们?

此外,如果您将它们与 C++ 中的数组进行比较,那么数组也使用整数索引。那么,'loc' 怎么会使用字符串作为索引呢。

感谢您的回答!

【问题讨论】:

github.com/pandas-dev/pandas/blob/master/pandas/core/… 如果您查看文档,iloc 是一个属性,而不是一个方法/函数。 'loc' 也一样。 【参考方案1】:

lociloc 都是属性

在某种意义上,它们返回类似 array 的东西,所以在它们之后 您将索引值放在括号中。

它们的区别在于:

iloc 提供对 DataFrame 的元素(单元)的访问,基于 它们的整数位置(行号/列号),从 0, loc 提供对相同元素(单元格)的访问,基于 的值 底层DataFrame的索引 / 列名

如果是 Series,您只需指定整数元素编号或 索引值(分别用于 ilocloc)。

有关更多详细信息,请参阅文档。

【讨论】:

以上是关于大熊猫中的“iloc”和“loc”是啥?的主要内容,如果未能解决你的问题,请参考以下文章

python [熊猫] .iloc和.loc

熊猫 iloc 返回与 loc 不同的范围 [重复]

熊猫:链式作业[重复]

有没有办法将字符串变量传递给 python .loc/.iloc?

pandas子集选取的三种方法:[].loc[].iloc[]

Pandas中iloc/loc/ix区别