打印前10个要素的名称及其卡方值

时间:2017-01-13 12:45:02

标签: python machine-learning scikit-learn svm

我有分类问题。我为数据构建了一组功能。我使用SVM进行分类。我想评估这些功能。

ch2=SelectKBest(score_func=chi2, k='all')
top_ranked_features = sorted(enumerate(ch2.scores_),key=lambda x:x[1], reverse=True)[:1000]
top_ranked_features_indices = map(list,zip(*top_ranked_features))[0]
for feature_pvalue in zip(np.asarray(featurenames)[top_ranked_features_indices],ch2.pvalues_[top_ranked_features_indices]):
       print feature_pvalue

但是当我运行时,我收到以下错误

  

AttributeError:' SelectKBest'对象没有属性'得分_'

注意:我还没有使用过矢量图。我在列表名featurenames中有要素名称,我想要打印所有或前K个要素的名称和卡方值

1 个答案:

答案 0 :(得分:1)

您只声明了要使用的评分函数和要选择的要素数。但是,功能选择需要数据才能使用某些统计测试找到最佳功能,然后您就可以访问这些分数。以下是一个示例,其中Viewpager包含要素,X包含目标值。

Y