在pandas中选择指定级别标签包含特定字符串的所有列
我想写:
mydf[mydf.columns.get_level_values('level_2').str.contains('mystring')]
但是这样不行。这里正确的写法是什么呢?
1 个回答
1
尝试一下:
idx = mydf.columns.get_level_values('level_2').to_series().str.contains('mystring')
mydf.loc[:, idx.values]
或者:
idx = mydf.columns.get_level_values('level_2').map(lambda t: 'mystring' in t)
mydf.loc[:, idx]