当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python Pandas Index.get_loc()用法及代码示例


Python 是一种用于进行数据分析的出色语言,主要是因为以数据为中心的 Python 包的奇妙生态系统。 Pandas 就是其中之一,它使导入和分析数据变得更加容易。

Pandas Index.get_loc()函数返回请求标签的整数位置、切片或布尔掩码。该函数适用于已排序和未排序的索引。如果传递的值不存在于索引中,它会提供各种选项。仅当索引标签已排序时,您才可以选择将前一个值或下一个值返回给传递的值。

用法: Index.get_loc(key, method=None, tolerance=None)

参数:
key:标签
method:{无,‘pad’/'ffill',‘backfill’/'bfill',‘nearest’},可选
->default:仅完全匹配。
->pad / ffill:如果没有完全匹配,则查找 PREVIOUS 索引值。
->backfill / bfill:如果没有完全匹配,则使用 NEXT 索引值
->nearest:如果没有完全匹配,则使用 NEAREST 索引值。通过首选较大的索引值来打破束缚距离。

返回:loc:int 如果唯一索引,切片如果单调索引,否则掩码

范例1:使用Index.get_loc()函数来查找传递值的位置。


# importing pandas as pd
import pandas as pd
  
# Creating the Index
idx = pd.Index(['Labrador', 'Beagle', 'Labrador',
                     'Lhasa', 'Husky', 'Beagle'])
  
# Print the Index
idx

输出:

让我们在索引中找出“拉萨”的位置。


# Print the location of the passed value..
idx.get_loc('Lhasa)

输出:

正如我们在输出中看到的,Index.get_loc()函数返回 3 表示传递的值存在于索引中的此位置。

范例2:使用Index.get_loc()函数来查找传递值的位置。如果传递的值不存在于索引中,则返回前一个值的位置,该位置刚好小于传递的值。


# importing pandas as pd
import pandas as pd
  
# Creating the Index
idx = pd.Index([1, 2, 3, 14, 25, 37, 48, 69, 100])
  
# Print the Index
idx

输出:

让我们在索引中找到值 33 的位置。


# Find the position of 33 in the index.
# If it is not present then we forward 
# fill and return the position of previous value.
idx.get_loc(33, method ='ffill')

输出:

正如我们所看到的,函数返回了输出 3。由于 33 不存在于索引中,但在排序顺序中,小于 33 的值是 25,它的位置是 4。所以,输出是 4。我们这样做如果未设置方法参数,则如果该值不存在,则会导致错误。


相关用法


注:本文由纯净天空筛选整理自Shubham__Ranjan大神的英文原创作品 Python | Pandas Index.get_loc()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。