Pandas get_dummies

Pandas get_dummies
O método para obter as variáveis ​​fictícias nos pandas usando o método get_dummies () é demonstrado neste artigo. Discutiremos o objetivo principal da função. Nós também iremos sobre o PD.A sintaxe Get_Dummies e fornece os exemplos passo a passo. As variáveis ​​dummy são variáveis ​​numéricas que codificam os dados categóricos. Os dois valores viáveis ​​para variáveis ​​fictícias são 0 e 1. Nas variáveis ​​fictícias, "1" indica que uma categoria está presente e "0" representa a categoria que não existe. Essas variáveis ​​0/1 também são conhecidas como variáveis ​​fictícias. No entanto, geralmente nos referimos a eles como variáveis ​​"fictícias". Isso também é conhecido como a codificação "um hot" da categórica no aprendizado de máquina.

Como fazer uso do método get_dummies () em pandas

Usando uma série Pandas, uma coluna ou várias colunas de dados de dados de pandas, o PD.A função get_dummies () pode gerar as variáveis ​​dummy. Algumas ferramentas na ciência de dados só podem ser usadas com os dados de entrada numérica. As inúmeras técnicas de aprendizado de máquina, como regressão logística e linear, aceitam apenas os dados de entrada numérica. Eles dão um erro se você tentar usar os dados da categoria que são baseados em strings. Isso significa que, antes de usar essas ferramentas, você deve codificar seus dados de categoria como variáveis ​​dummy (numérico). Vamos olhar para o PD.A sintaxe Get_Dummies para entender como funciona.

Sintaxe: pandas.get_dummies (dados, prefixo = nenhum, prefix_sep = '_', dummy_na = false, colunas = nenhum, esparso = false, drop_first = false, dtype = nenhum)

Onde;

dados: Cujos dados são alterados ou manipulados.

prefixo: String para anexar os nomes de colunas de um DataFrame. Ao usar os manequins Get em um DataFrame, passe uma lista com um tamanho equivalente ao número total de colunas de dados de dados. "Nenhum" é o valor padrão.

prefix_sep: Use um separador ou delimitador ao anexar um prefixo. É "por padrão.

dummy_na: Uma nova coluna é adicionada para indicar os valores da NAN. É falso por padrão se os valores falsos ausentes forem ignorados.

colunas: Os nomes de colunas de dados que precisam ser codificados. As colunas com uma categoria ou tipo de dados de objeto são convertidas para "nenhuma". O valor padrão é nenhum".

escasso: Especifica se um SparsarArray (True) ou uma matriz numpy padrão devem fazer o backup das colunas codificadas por manequim (false). False é o valor padrão.

drop_first: Dos níveis categóricos K para obter manequins K-1, remova o primeiro nível.

dtype: Tipo de dados de novas colunas. Pode haver apenas um tipo de dados. O “np.uint8 ”, é o valor padrão.

Agora, vamos usar a função get_dummies () nos exemplos a seguir:

Exemplo 1: Usando a função get_dummies () na série pandas

Vamos começar usando a função get_dummies () em uma série de pandas. Criamos uma série usando o PD.Função da série ().

Depois de importar a biblioteca de pandas, criamos uma lista de "nomes" com os itens "Mark", "Kane", "Larry", "Mark", nenhum, "Larry", "Kane", nenhum e "Mark". Para criar uma série, a lista é passada dentro do PD.Função da série (). A função print () é usada para ilustrar a série "S". Existem 3 categorias de dados ou valores da string na série (Mark, Kane e Larry). A série também contém alguns valores ausentes. Agora, os pandas obtêm manequins função é usada.

O Pd.get_dummies () cria um dataframe com quatro novas variáveis ​​como sua saída: "Kane", "Larry" e "Mark". A nova variável Kane tem um valor de 1 em que o valor da série original era "Kane", enquanto os valores da outra variável são "0.”Onde o valor da série original era“ Larry ”, a nova variável Larry agora tem um valor de“ 1 ”enquanto os valores de outras variáveis ​​são todos“ 0 ”e assim por diante. Uma única variável que contém três valores é recodificada em três variáveis ​​contendo 0 ou 1 valores usando o método get_dummies (). Embora seja apresentado de maneira diferente (na forma de 0 e 1 valores), a nova estrutura inclui as mesmas informações/dados.

Exemplo 2: Usando a função get_dummies () no pandas dataframe

Em seguida, aplicamos o PD.Função get_dummies () na coluna DataFrame. Vamos criar um quadro de dados de pandas primeiro usando o PD.DataFrame () Função depois de importar os módulos pandas e numpy iguais que fizemos no primeiro exemplo.

Três colunas no quadro de dados fornecidas incluem os nomes "EMP", "Salário" e "Country."Na coluna" EMP ", armazenamos os nomes dos funcionários (" Jay "," Anna "," Sam "," Eddy "," Jhon "," Maria "," Sara "," Kim "," Jack " , "Will", "Jerry"). No salário da coluna, os salários dos funcionários são armazenados como valores numéricos (40000, 53000, 44000, 39000, 47000, 34000, 55000, 51000, 42000, 39000, 38000). A coluna "país" contém os nomes de países de onde cada funcionário pertence ("EUA", "França", "EUA", "EUA", "Rússia", "Rússia", "Rússia", "França", " França "," EUA ", NP.nan). Podemos converter a coluna do país, que é uma coluna categórica, em uma variável dummy 0 ou 1. Aplicamos a função Pandas get_dummies () na coluna do país no DATAFRAME DF DF.

Primeiro de tudo, pode -se notar que um novo DataFrame é criado como resultado da operação. A coluna do país anterior não existe mais neste novo DataFrame. Agora existem 4 novas colunas em seu lugar: country_france, country_russia e country_usa. O nome da variável antiga (país) é prefixada aos nomes das novas variáveis ​​da função get_dummies () por padrão. A nova coluna Country_France tem um valor de 1 onde o valor da coluna era "França" na coluna original e 0 para as outras variáveis. A nova coluna Country_russia tem um valor de 1, enquanto possui um valor 0 para as outras variáveis ​​em que o valor da coluna era "Rússia" na coluna original. A nova coluna country_usa tem um valor de 1 onde o valor da coluna original era "EUA", e as outras variáveis ​​têm valores de 0. Os pandas get_dummies () agora produziram uma nova variável 0/1 para cada nível da coluna classificada anterior, “Country.”

Exemplo 3: Usando a função get_dummies () e seu parâmetro Drop_first em uma coluna

Agora usamos o método get_dummies () em uma coluna categórica do quadro de dados, mas o primeiro nível da coluna categórica é descartado. Definimos o parâmetro Drop_first = True para fazer isso. Vamos criar um DataFrame primeiro para que possamos aplicar a função get_dummies () em sua coluna.

Como pode ser observado, a coluna do curso é categórica e tem alguns valores ausentes. Agora, convertemos a coluna categórica "Curso" nas variáveis ​​fictícias dos valores 0/1.

Observe que agora existem apenas 2 variáveis ​​dummy na saída: curso_python e curso_react. A variável dummy da categoria "Java" não está presente. Quando o drop_first estiver definido como true, o get_dummies () não incluirá a coluna fictícia para a primeira categoria da variável. São necessárias apenas as variáveis ​​k - 1 dummy para transmitir a mesma informação quando uma variável categórica tem K categorias mutuamente exclusivas. Também podemos incluir uma variável dummy para os valores ausentes, especificando o DUMMY_NA = parâmetro true.

Você pode notar que uma variável dummy denominada curso_nan também é adicionada pela função get_dummies () na saída. Os outros parâmetros da função também podem ser usados ​​para alterar a saída de dados de dados.

Conclusão

Cobrimos como obter as variáveis ​​fictícias em pandas neste tutorial. Vimos que os get_dummies () podem ser usados ​​para obter as variáveis ​​fictícias. Vimos a sintaxe da função e seus parâmetros para entender sua funcionalidade. Implementamos alguns exemplos para ensinar como usar a função get_dummies () no Pandas DataFrame and Series para obter as variáveis ​​dummy. Além disso, vimos alguns parâmetros da função get_dummy () para modificar os resultados ou de saída de dados de saída.