我有一个遵循一键编码模式的数据集,我的因变量也是二进制的。我的代码的第一部分列出了整个数据集的重要变量。我使用了本stackoverflow帖子中提到的方法:“ 使用scikit确定每个功能对特定类预测的贡献“我不确定要获得什么输出。对于我来说,功能重要性是整个模型中最重要的功能,“与延迟相关的DMS”。我将其解释为,该变量应该很重要在Class 0或Class 1中,但是从我得到的输出中,这在两个Class中都不重要。我在上面共享的stackoverflow中的代码还显示,当DV为二进制时,Class 0的输出正好相反(按术语类1的符号+/-)。在我的情况下,两个类中的值都不同。
这是情节的样子:-
功能重要性-整体模型
我的代码的第二部分显示了累积功能的重要性,但是查看[plot]则表明所有变量都不重要。我的公式有误还是解释有误?
这是我的代码;
import pandas as pd
import numpy as np
import json
import matplotlib.pyplot as plt
%matplotlib inline
from sklearn.model_selection import train_test_split, cross_val_score
from sklearn.metrics import confusion_matrix
from sklearn.preprocessing import scale
from sklearn.ensemble import ExtraTreesClassifier
##get_ipython().run_line_magic('matplotlib', 'inline')
file = r'RCM_Binary.csv'
data = pd.read_csv()
print("data loaded successfully ...")
# Define features and target
X = data.iloc[:,:-1]
y = data.iloc[:,-1]
#split to training and testing
X_train, X_test, y_train, y_test …Run Code Online (Sandbox Code Playgroud) python machine-learning binary-data random-forest scikit-learn