我有一个数据帧和行选择功能。
\1
问题是我不想更改列名(保持大写)并运行以下函数
import pandas as pd
df = pd.DataFrame({'A':[1,2,3],'B':[5,6,7]})
def select_f(row):
return row['a']
答案 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]