在pandas数据框中查找值的第一个匹配项(从值列表中),并返回行的索引,可以使用DataFrame
的isin()
方法结合idxmax()
方法来实现。
首先,使用isin()
方法将要查找的值列表传入,该方法会返回一个布尔型的数据框,表示每个元素是否在值列表中存在。然后,使用idxmax()
方法找到第一个匹配项的索引,该方法会返回第一个最大值的索引。
以下是一个示例代码:
import pandas as pd
# 创建一个示例数据框
data = {'A': [1, 2, 3, 4, 5],
'B': [6, 7, 8, 9, 10],
'C': [11, 12, 13, 14, 15]}
df = pd.DataFrame(data)
# 要查找的值列表
values = [2, 8, 15]
# 使用isin()方法查找匹配项
matches = df.isin(values)
# 使用idxmax()方法找到第一个匹配项的索引
index = matches.idxmax()
print(index)
输出结果为:
A 1
B 2
C 4
dtype: int64
以上代码中,index
变量存储了第一个匹配项的索引,其中'A'对应的索引为1,'B'对应的索引为2,'C'对应的索引为4。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云