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

时间:2019-03-10 07:42:06

标签: python pandas dataframe

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

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”的行?

1 个答案:

答案 0 :(得分:6)

您需要将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