删除所有包含某些字符串的列,但不包括具有相同字符串的列

2024-06-08 19:42:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有几个列包含一个字符串“luds”,我想删除所有这些列,只有两列包含相同的字符串

例如,如果我的数据框中有以下列:

    luds_mean  
    luds_std  
    luds_var  
    luds_corr  
    luds_out  
    made_mean 
    made_std 
    made_var 
                        

我希望保留luds_mean和luds_std列,并删除包含字符串luds的所有列,留下以下列:

    luds_mean
    luds_std
    made_mean
    made_std
    made_var
       

Tags: 数据字符串varoutmeanstdmadecorr
1条回答
网友
1楼 · 发布于 2024-06-08 19:42:52

您可以使用isin()+loc访问器:

df=df.loc[:,~df.columns.isin(['luds_var','luds_corr','luds_out'])]

如果有更多名为luds\ux的列。。。然后使用:

s=df.columns.isin(['luds_mean','luds_std']) | ~df.columns.str.contains('luds_')
df=df.loc[:,s]

相关问题 更多 >