python - 删除与 python 中的某些模式匹配的列

标签 python pandas

我有一个很大的 csv 文件,其中有如下几列:

<表类="s-表"> <头> M_15_19_yr_ M_19_25_yr_ M_25_35_yr_ <正文> 20 34 12 09 21 19

我想删除从 M_{age1}_{age2}_yr 开始的列。我尝试使用:

df = df.loc[:, ~df.columns.str.startswith(('M_15_19_yr_','M_19_25_yr_','M_25_35_yr_'))

但是,我有很多这样的专栏。如何在不明确写下每列名称的情况下删除所有此类列?

最佳答案

您可以使用 filter 进行检查

df = df.filter(regex = r'^(?!M_\d+_\d+_yr)')

关于python - 删除与 python 中的某些模式匹配的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73480989/

相关文章:

python - 获取二进制数据的字节大小(python3.6)

python - openCV getPerspectiveTransform 断言错误

python - 如何获取 "paster request"使用配置主机值而不是本地主机?

Python排序包含元组列表的类实例

python - 迭代 groupby 对象上 value_counts() 的结果

python - Pandas 将数据帧转换为元组数组

Python pandas str.extract 从多列中提取

python - Pandas 数据框问题。不知道如何清理和管理一种 block 状矩阵

python - 获取表单字段的初始数据

python - 如何在没有列名的情况下使用 Pandas 进行排序