【发布时间】:2021-12-24 06:51:05
【问题描述】:
我需要从带有特定字符串模式 (.1) 的标头的 pandas 数据框中删除列。到目前为止,我的代码可以做到这一点,但也删除了标题包含模式 11 的列,我想保留它:
DX_totals = DX_totals[DX_totals.columns.drop(list(DX_totals.filter(regex='[.|1]{2}')))]
如何调整代码以仅删除标题包含模式.1 的列?
数据格式:
Well ID PlantFlow PlantChrome DXRunTime ME01 ME02 ME03 ME04 ME05 ME06 ... MJ22.1 MJ23.1 MJ24.1 MJ25.1 MJ26.1 MJ27.1 MJ28.1 MJ29.1 MJ30.1 DX
0 2021-01-01 00:01:00 91668344 5426653 22092 980729 1117150 103164 287075 2747259 1885657 ... -44.115395 -40.537468 0 -31.149002 -61.727837 0 0 -68.037201 -63.994675 22092
1 2021-01-02 00:00:00 92506192 5471052 22332 993835 1131376 0 0 2777229 0 ... -44.074005 -40.616493 0 -32.239822 -61.803848 0 0 -68.023262 -63.993423 22332
2 2021-01-03 00:00:00 93343920 5515476 22572 1006940 1145596 0 0 2807222 0 ... -43.943542 -40.857651 0 -31.181437 -61.927658 0 0 -68.01889 -63.997154 22572
期望的结果如下所示:
Well ID PlantFlow PlantChrome DXRunTime ME01 ME02 ME03 ME04 ME05 ME06 ME11 ...
0 2021-01-01 00:01:00 91668344 5426653 22092 980729 1117150 103164 287075 2747259 2748354 ...
1 2021-01-02 00:00:00 92506192 5471052 22332 993835 1131376 0 0 2777229 0 2777350 ...
谢谢!
【问题讨论】:
-
大括号用于一般的重复量词,所以可能因为它
{2}应该更改为{1}?并且可能删除|符号,因为您希望它完全匹配.1? -
@ImSo3K 我确实尝试过,但后来我想保留包含字符
1的其他列被删除了。例如标题为ME02的列。 -
如果您编辑帖子并添加数据示例以及您希望输出的样子会更容易。
-
已编辑帖子中提供的数据和所需示例。
标签: python regex dataframe character columnheader