【问题标题】:How do I decode the multiclass when I use a LabelEncoder for my target variable in sklearn? [duplicate]当我在 sklearn 中为我的目标变量使用 LabelEncoder 时,如何解码多类? [复制]
【发布时间】:2020-09-11 12:54:41
【问题描述】:

我有一个要解决的多分类问题,目标变量包含性别(男性,女性)。我使用了来自 sklearn 的 LabelEncoder 来实现一个热编码。我绘制了一个混淆矩阵,我得到了一个包含 0 和 1 而不是类的输出。我怎样才能找回哪个类映射到哪个二进制数(0,1 等)?任何建议都会非常有帮助。

从 sklearn.preprocessing 导入标签编码器

编码器 = LabelEncoder()

y = encoder.fit_transform(y)

【问题讨论】:

    标签: python scikit-learn nlp data-science multilabel-classification


    【解决方案1】:

    只需使用 inverse_transform:

    from sklearn import preprocessing
    
    le = preprocessing.LabelEncoder()
    data = ['apple', 'orange', 'pinaple', 'orange']
    le.fit(data)
    
    encoded = le.transform(data)
    
    >>> [0 1 2 1]
    
    decoded = le.inverse_transform(encoded)
    
    >>> ['apple' 'orange' 'pinaple' 'orange']
    

    在提问之前也尝试阅读文档,有很多例子: https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.LabelEncoder.html

    【讨论】:

    • 有人也可以说在回答之前尝试搜索重复,有很多examples ;)
    • 这正是你应该做的!
    • 谢谢大家的帮助:)
    猜你喜欢
    • 2020-11-03
    • 2017-10-29
    • 2023-03-13
    • 2018-08-02
    • 2015-07-11
    • 2022-01-15
    • 2020-12-05
    • 2020-07-12
    • 2016-11-20
    相关资源
    最近更新 更多