OneHotEncoder

Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Autor
    Posts
  • #30780
    Profile photo ofGuilherme_MirandaGuilherme Miranda
    Participante

    Bom dia professor, você poderia me ajudar?

    Gostaria de fazer um OneHotEncoder de uma coluna, mas a mesma possuem vários valores em forma de lista.

    Ex:

    | Coluna |

    |A; C; D |

    |B;A |

    |C |

    | D; A |

    qualquer seria a melhor forma de fazer

     

     

     

    #30802

    Olá Guilherme, tente utilizar o MultiLabelBinarizer(). Veja um exemplo nessa discussão:

    https://stackoverflow.com/questions/50030751/how-do-i-use-onehotencoder-on-a-pandas-series-of-lists

     

    Fabio

    #31641

    Olá Guilherme, segue um complemento do instrutor Denny:

    Teria que implementar seu próprio código para isso. Você poderia:

    1) juntar todos os valores possíveis em uma variável auxiliar, por exemplo algo do tipo (supondo que sua coluna col esteja em um dataframe df):

    aux = set()
    for entry in df[col]:
    aux.update(entry)

    2) montar cada nova coluna com base na variável auxiliar, e alimentar ela com o valor 1 se ela aparece na coluna original, 0 se não aparece:

    for val in list(aux):
    temp = []
    for i in range(len(df)):
    temp.append(1 if val in df[col][i] else 0)
    df[val] = temp

    Fabio

Visualizando 3 posts - 1 até 3 (de 3 do total)
  • Você deve fazer login para responder a este tópico.