如何从拟合的scikit-learn模型中获取功能数量?

时间:2019-03-27 15:10:17

标签: python scikit-learn

在将模型拟合到数据后,我试图从模型中提取特征数量。

我浏览了模型的目录,并找到了仅获取特定模型编号的方法(例如,查看SVM支持向量的维数),但是我没有找到可用于任何类型模型的通用方法一个模型。

说我有实例和对应类的数据集

X, y    # dataset

并使用scikit-learn库中的任意模型来拟合此数据

model.fit(X,y)

稍后我想使用此模型来查找原始数据集的维,以某种方式

model.n_features_

是否有一种快速而通用的方法?

1 个答案:

答案 0 :(得分:4)

Sklearn中的所有分类器都没有单一的公共属性。

我建议以下内容:

对于任何sklearn.linear_model / sklearn.svm.svc,您可以使用以下方法。

>>> clf.coef_.shape[-1]

对于任何基于树的模型(DecisionTreeClassifier / RandomForestClassifier / GradientBoostingClassifier),您可以使用

>>> clf.n_features_