python - 在 Pandas 中,选择标签包含指定级别的给定字符串的所有列

标签 python pandas

我想写:

mydf[mydf.columns.get_level_values('level_2').str.contains('mystring')]

但这行不通。这里的正确语法是什么?

最佳答案

尝试:

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]

关于python - 在 Pandas 中,选择标签包含指定级别的给定字符串的所有列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25274598/

相关文章:

python - 如何预处理具有太多 NAN 值的列?

python - 从 Python 中的图像中减去 RGB 值

python - 如何使用 Homebrew 在我的 Mac 上安装 Python25

python - 确定天空中的 eclipse

python - scipy ND 对 NaN 进行插值

python - (使用 Pandas 解决 SQL 问题)从给定的 pandas 数据帧中,找到请求的总体接受率,四舍五入到小数点后两位

python - 将列表转换为字典

python - 以欧洲格式显示 pandas 数据框

Python Pandas - 从数据框创建用于乘法的数组或矩阵

python - Numpy选择返回 bool 错误消息