使用正则表达式过滤DataFrame列

时间:2019-05-23 12:22:12

标签: python regex pandas

我计算数据集的统计信息,并且我想过滤包含特定字符串的列。我该如何使用正则表达式呢?

volumes_c中,我过滤了一些结构,其中有“体积”名称

Select_list = ["Amygdala", "Hippocampus", "Lateral-Ventricle", "Pallidum", "Putamen", "Thalamus", "Caudate"]
Side = ["Left", "Right"]
#Selected columns
if(Select_list):
    for s in Side:
        for struct in Select_list:
            volumes_c = group_c.filter(regex="^(?=.*"+s+")(?=.*"+struct+")(?=.*Volume)")

现在,我想过滤以下字段中包含SurfArea的列:

SurfArea

1 个答案:

答案 0 :(得分:0)

假设DataFrame数据位于变量 df 中,则过滤器将为:

 df.filter(like="SurfArea", axis=1)

实际上,'axis'arg的默认值为1,您不能编写它,但如果要按行过滤,请将其设置为0。