Python|熊猫索引.get_loc()
Python是一种用于进行数据分析的出色语言,主要是因为以数据为中心的Python包的奇妙生态系统。 Pandas就是其中之一,它使导入和分析数据变得更加容易。
Pandas Index.get_loc()
函数返回请求标签的整数位置、切片或布尔掩码。该函数适用于已排序和未排序的索引。如果传递的值不存在于索引中,它会提供各种选项。仅当索引标签已排序时,您才可以选择将前一个值或下一个值返回给传递的值。
Syntax: Index.get_loc(key, method=None, tolerance=None)
Parameters:
key : label
method : {None, ‘pad’/’ffill’, ‘backfill’/’bfill’, ‘nearest’}, optional
-> default: exact matches only.
-> pad / ffill: find the PREVIOUS index value if no exact match.
-> backfill / bfill: use NEXT index value if no exact match
-> nearest: use the NEAREST index value if no exact match. Tied distances are broken by preferring the larger index value.
Returns : loc : int if unique index, slice if monotonic index, else mask
示例 #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。我们这样做如果未设置方法参数,则如果该值不存在,则会导致错误。