#特征初筛
#如果是分类问题:对于分类变量,分析较多类的变迁分布是否差异明显,此类变量不删除
#这里回归问题 则 不考虑
def Remove_singleValue_var(df,var_list):
# 变量取值同一性,删除
Sigle_var = [i for i in df
if df[i].value_counts().sort_values(ascending=False)
.values[0]/len(df) > 0.99]
return Sigle_var
def Remove_low_variance(df,var_list,std_lower=1):
low_variance_var=[]
for i in var_list:
if (len(df[i].value_counts())>10) and (df[i].std()<std_lower):
low_variance_var.append(i)
return low_variance_var
#树模型重要度特征选择
from sklearn.ensemble import RandomForestRegressor
from sklearn.model_selection import KFold
def Select_feature(df,label,col_num=100,n_folds=3):
#X是不含id 的數據,X=self.allldata[:len(self.train)]
'''使用extra tree 进行特征选择'''
'''param:data 数据'''
'''param:col_num 每
python 特征筛选
最新推荐文章于 2023-10-31 20:37:10 发布