Skip to main content
 首页 » 编程设计

python之如何在索引列上使用正则表达式选择数据框行

2025年05月04日23lovecherry

我是 Pandas 新手。 这是一个例子的问题

df = pd.DataFrame(data={'id':['john','joe','zack']}) 

我知道我可以像这样选择“id”列包含“jo”的行

mask = df['id'].str.contains('jo') 
df[mask] 

但是假设 id 列被索引了

df = df.set_index('id') 

现在如何选择索引列包含“jo”的行?

请您参考如下方法:

您需要将id 更改为index:

df = pd.DataFrame(data={'id':['john','joe','zack'], 
                        'col':[1,2,3]}) 
 
df = df.set_index('id') 
df1 = df[df.index.str.contains('jo')] 
print (df1) 
      col 
id        
john    1 
joe     2