pandas数据帧列的不区分大小写匹配

时间:2017-08-24 11:52:56

标签: python pandas dataframe

我有一个数据帧和行选择功能。

\1

问题是我不想更改列名(保持大写)并运行以下函数

import pandas as pd
df = pd.DataFrame({'A':[1,2,3],'B':[5,6,7]})
def select_f(row):
    return row['a']

1 个答案:

答案 0 :(得分:1)

您可以将df.filter与正则表达式一起使用:

In [246]: df.filter(regex=re.compile('^a$', re.I))
Out[246]: 
   A
0  1
1  2
2  3

出于您的目的,您可以使用:

def select_f(row):
    return row.filter(regex=re.compile('^a$', re.I)).iloc[0]