特征重要性筛选,如何只保留需要列

我这有一个列表,我想筛选出importance这一列数值大于0.005的特征名称或者列,请问如何操作呢?

img

该回答引用GPTᴼᴾᴱᴺᴬᴵ
假设你的数据是一个DataFrame对象,名为df,那么你可以使用以下代码来选择需要保留的列:

selected_cols = df.loc[df['importance'] > 0.005, 'issueDate':'verification Status'].columns.tolist()


这将选择importance列大于0.005的行,并选择从issueDate到verification Status列之间的列。最后,将列名称存储在selected_cols列表中。如果你只需要列名,请使用以下代码:

selected_cols = df.loc[df['importance'] > 0.005, 'issueDate':'verification Status'].columns.tolist()


这将返回一个列名的列表。

pandas,可以切割需要的列。

删除importance小于0.006的例


data=pd.read_csv('xxx.csv',encoding='utf-8')
a=data['importance']
a1=[]
for i in a:
    if i<0.006:
        b=i
        a1.append(b)
    else:
        continue
for i in a1:
    indexNames = data[data['importance'] == i].index
    data.drop(indexNames,inplace=True)
data.to_csv(r"xxx1.csv",mode = 'a',index =False)

能否提取出他们的行名称,如同['isDefault','id']这样的形式,谢谢