PYTHON 用随机森林算法快速计算指标重要性

该博客介绍了如何通过Python的scikit-learn库利用随机森林分类器计算数据集中的特征重要性。提供的`calIv_by_RandomForestClassifier`函数接收数据框和目标变量列名,返回一个按重要性排序的DataFrame,展示了特征对目标变量的影响程度。
摘要由CSDN通过智能技术生成

指标重要性反映了自变量对因变量的影响幅度,是特征工程的重要工作。

####### 快速计算变量重要性
## data_df : 待计算原始数据; 
## obj_columns:目标变量列名
def calIv_by_RandomForestClassifier(data_df , obj_columns):
    from sklearn.ensemble import RandomForestClassifier
    clf = RandomForestClassifier()
    Y = data_df[obj_columns]
    X = data_df.drop(obj_columns , axis = 1)
    
    model = clf.fit(X , Y)
    model.feature_importances_
    from collections import OrderedDict
    res_dsec = OrderedDict()
    res_dsec['col_name'] = X.columns.tolist()
    res_dsec['val'] = model.feature_importances_
    res = pd.DataFrame(res_dsec)
    res = res.sort_values('val')
    return res

函数的调用

if __name__ == '__main__':
    import pandas as pd
    import numpy as np
    data = pd.read_csv('data/cs-training.csv')
    data.describe()
    data.columns.tolist()
    ### 采用随机森林模型计算iv值
    iv= calIv_by_RandomForestClassifier(data , 'SeriousDlqin2yrs')
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值