首页 > 解决方案 > 熊猫数据框搜索包含并获取行号

问题描述

在数据框中,我想在第一列中搜索一个字符串,并在找到该字符串时,我想获取行号并将其分配为变量,

我的数据框看起来像这样

df = pd.DataFrame({'A': ['xx', '--- bios ---', 'yy', 'zz', '--- os ---'],'B': ['rat', '', 'winter', 'host','']})

我正在尝试获取字符串的行号并将其分配给变量,如下所示

var = df.iloc[:,0].str.contains('--- bios ---').index

其中 --- bios --- 是搜索词,我正在尝试获取索引

但我没有得到想要的输出,我期望的输出是 4,这是行号

标签: pythonpandas

解决方案


df.iloc[:,0].str.contains('--- bios ---')仍然具有与 相同的(完整)索引df。您可能想要:

df.index[df.iloc[:,0].str.contains('--- bios ---')]

或者:

df[df.iloc[:,0].str.contains('--- bios ---')].index

推荐阅读