Responder a: Erro aula “Transformacao de variaveis categoricas 2 – base censo”

Home Fóruns Fórum Machine Learning e Data Science com Python de A à Z Erro aula “Transformacao de variaveis categoricas 2 – base censo” Responder a: Erro aula “Transformacao de variaveis categoricas 2 – base censo”

#23448
Jason Baum
Participante

    Fiz a alteração:

     

    import pandas as pd

    base = pd.read_csv(‘census.csv’)

    #Separando os atributos previsores e classe
    previsores = base.iloc[:, 8:9].values
    classe = base.iloc[:, 14].values

    from sklearn.preprocessing import LabelEncoder, OneHotEncoder
    from sklearn.compose import ColumnTransformer
    labelencoder_previsores = LabelEncoder()

    onehotencorder = ColumnTransformer(transformers=[(“OneHot”, OneHotEncoder(), [1,3,5,6,7,8,9,13])],remainder=’passthrough’)
    previsores = onehotencorder.fit_transform(previsores).toarray()

    labelencorder_classe = LabelEncoder()
    classe = labelencorder_classe.fit_transform(classe)

    from sklearn.preprocessing import StandardScaler
    scaler = StandardScaler()
    previsores = scaler.fit_transform(previsores)

    from sklearn.preprocessing import LabelEncoder, OneHotEncoder
    labelencoder_previsores = LabelEncoder()

    #transformar str em int / variáveis categóricas em numéricas
    #lebels = labelencoder_previsores.fit_transform(previsores[:,1])

    previsores[:,0] = labelencoder_previsores.fit_transform(previsores[:,0])
    previsores[:,3] = labelencoder_previsores.fit_transform(previsores[:,3])
    previsores[:,5] = labelencoder_previsores.fit_transform(previsores[:,5])
    previsores[:,6] = labelencoder_previsores.fit_transform(previsores[:,6])
    previsores[:,7] = labelencoder_previsores.fit_transform(previsores[:,7])
    previsores[:,8] = labelencoder_previsores.fit_transform(previsores[:,8])
    previsores[:,9] = labelencoder_previsores.fit_transform(previsores[:,9])
    previsores[:,13] = labelencoder_previsores.fit_transform(previsores[:,13])

    onehotencorder = OneHotEncoder(categorical_features=[0])
    previsores = onehotencorder.fit_transform(previsores).toarray()

     

    2 novos erros:

    Ao executar: onehotencorder = OneHotEncoder(categorical_features=[0])

    Erro:

    return f(**kwargs)

    TypeError: __init__() got an unexpected keyword argument ‘categorical_features’

     

    Ao executar: previsores = onehotencorder.fit_transform(previsores).toarray()

    Erro:

    raise ValueError(

    ValueError: all features must be in [0, 0] or [-1, 0]