模块“ skfeature.function.similarity_based.fisher_score”没有属性“ feature_ranking”

问题描述

按照featureselection.asu.edu/tutorial.php中实现的步骤,我已经实现了以下代码来使用skfeature.function计算Fisher分数 我的代码段如下:

pip install skfeature-chappers
from skfeature.function.similarity_based import fisher_score

score = fisher_score.fisher_score(X_train,y_train)
idx = fisher_score.feature_ranking(score)
print(idx)

我收到以下属性错误:

---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-33-cd27bc981d22> in <module>()
  1 import skfeature
  ----> 2 idx = fisher_score.feature_ranking(score)
  3 print(idx)

  AttributeError: module 'skfeature.function.similarity_based.fisher_score' has no attribute 
  'feature_ranking'

解决方法

feature_ranking似乎不存在,但我认为您可以找到fisher_score作为API的一部分,该API已经返回带有参数mode='rank'的索引。尝试以下方法,它对我有用-

from skfeature.function.similarity_based import fisher_score
from sklearn.datasets import load_diabetes

db = load_diabetes()
y_train = db.target
X_train = db.data

idx = fisher_score.fisher_score(X_train,y_train,mode='rank') #returns rank directly instead of fisher score. so no need for feature_ranking
print(idx)
array([1,7,3,6,2,9,8,5,4])

相关问答

错误1:Request method ‘DELETE‘ not supported 错误还原:...
错误1:启动docker镜像时报错:Error response from daemon:...
错误1:private field ‘xxx‘ is never assigned 按Alt...
报错如下,通过源不能下载,最后警告pip需升级版本 Requirem...