Scikit learn的AttributeError:'LabelEncoder'对象没有属性'classes_'?

Posted

技术标签:

【中文标题】Scikit learn的AttributeError:\'LabelEncoder\'对象没有属性\'classes_\'?【英文标题】:Scikit learn's AttributeError: 'LabelEncoder' object has no attribute 'classes_'?Scikit learn的AttributeError:'LabelEncoder'对象没有属性'classes_'? 【发布时间】:2019-07-03 03:40:03 【问题描述】:

我正在尝试使用sklearn LabelEncoder,但它说它没有属性classes_,但是它存在,我不知道是什么问题。这是我的代码的 sn-p

from sklearn.preprocessing import LabelEncoder
encoder =  LabelEncoder()

def classes_():
                #Return the classes which are classified by this model
                return encoder.classes_
def num_of_classes():
            """
            Return the number of ouput classes
            """
            return len(classes_())

X=TimeDistributed(Dense(output_dim = num_of_classes(),293,activation = "softmax")                                                               

但是,我收到此错误 AttributeError: 'LabelEncoder' object has no attribute 'classes_'

【问题讨论】:

【参考方案1】:

在尝试访问classes_ 之前,您需要在LabelEncoder 上调用fit(...)fit_transform(...),否则您将收到此错误。属性是通过拟合创建的。

【讨论】:

以上是关于Scikit learn的AttributeError:'LabelEncoder'对象没有属性'classes_'?的主要内容,如果未能解决你的问题,请参考以下文章

Sklearn 速查

scikit-learn( Macine Learning in Python )

[机器学习与scikit-learn-3]:scikit-learn模型地图与模型选择

scikit-learn学习基础知识四

scikit-learn:如何使用拟合概率模型?

用scikit-learn学习LDA主题模型