在朴素贝叶斯中获得功能重要性

时间:2018-08-22 14:10:17

标签: python machine-learning scikit-learn feature-selection naivebayes

我的问题与此完全相似, How to get feature Importance in naive bayes?

但是当我运行代码

neg_class_prob_sorted = NB_optimal.feature_log_prob_[0, :].argsort()
pos_class_prob_sorted = NB_optimal.feature_log_prob_[1, :].argsort()

print(np.take(count_vect.get_feature_names(), neg_class_prob_sorted[:10]))
print(np.take(count_vect.get_feature_names(), pos_class_prob_sorted[:10]))

它总是打印带有相同首字母的单词

['aafco' 'misfit' 'misfir' 'miseri' 'miser' 'misconcept' 'miscarriag'
 'misc' 'mirin' 'minuscul']
['aafco' 'metrx' 'meticul' 'methood' 'metaplus' 'metaphor' 'mestemach'
 'messiest' 'mesmer' 'mesa']

有什么更好的方法可以打印与正反两类相对应的重要特征?

1 个答案:

答案 0 :(得分:-1)

important_features = pd.DataFrame(data = np.transpose(model.fit(fdata,y_train).feature_log_prob _)。astype(“ float32”),index = fdata.columns)