Data Science (27 Part Series)
1 Aprimorando a Seleção, Filtragem e Agrupamento de Dados no Pandas
2 Operadores Relacionais e Lógicos no Pandas: Simplificando a Filtragem de Dados
… 23 more parts…
3 Python Pandas: Explorando a Função “read” e suas Possibilidades
4 Desmistificando e Simplificando a Biblioteca NumPy em Python
5 Explorando Estruturas de Dados e Laços no Python: Sets, Arrays, Loops, Listas e Dicionários
6 Explorando as Funções Básicas no Python Pandas: Manipulação e Análise de Dados Simplificadas
7 Simplificando a Análise de Dados Textuais com Manipulação de Strings no Pandas
8 Desvendando a Sintaxe das Expressões Regulares em Python: Um Guia Completo
9 Utilização e Aplicação do Método melt() no Pandas
10 Utilização e Aplicação do `json_normalize()` no Pandas
11 Introdução ao método `apply()` e lambda no Pandas: Um Guia Completo
12 Tratamento de Dados Nulos no Pandas: Uma Abordagem Completa e Detalhada
13 Pandas `get_dummies`: Uma Abordagem Completa com Exemplos
14 Tratamento de Outliers no Pandas: Estratégias e Exemplos
15 Introdução ao Pandas: Unindo DataFrames
16 A Função `loc` do Pandas: Filtragem Detalhada e Exemplos Práticos
17 Detalhando os Diferentes Tipos de Leitura e suas parâmetros Função `read()` no Pandas
18 Guia Avançado do Método `merge` no Pandas com Exemplos
19 O Método `cut` do Pandas: Uma Ferramenta Poderosa para a Segmentação de Dados
20 Projeto de Data Science: Análise de Dados do Airbnb
21 Uma Jornada pelo Universo da Amostragem em Data Science com Python: Teoria e Prática
22 Uma Exploração Abrangente da Estatística Descritiva em Data Science com Python: Exemplos Práticos com Dataset Fictício
23 Explorando os Quantis e Quartis em Data Science com Python: Uma Análise Detalhada com Exemplos Práticos e Dataset Fictício
24 Desvendando as Relações com Correlação de Dados em Data Science usando Python: Exemplos Práticos com Dataset Fictício
25 Explorando a Poderosa Representação Gráfica em Data Science com Python: Exemplos Práticos com Dataset Fictício
26 Google Cloud Storage com Python: Um Guia Completo
27 Explorando as Funções Específicas da Biblioteca google-cloud-storage no Google Cloud Platform
O Pandas é uma das bibliotecas Python mais populares e poderosas para manipulação e análise de dados. Entre suas muitas funcionalidades, o método get_dummies()
é uma ferramenta útil para transformar variáveis categóricas em representações numéricas para análise de dados e modelagem estatística. Neste artigo, vamos explorar a função get_dummies()
do Pandas em detalhes, entender como ela funciona e fornecer diversos exemplos práticos para melhor compreensão.
O que é get_dummies()
?
get_dummies()
é uma função da biblioteca Pandas que permite criar variáveis dummy a partir de variáveis categóricas. Variáveis dummy são representações numéricas de variáveis categóricas, onde cada categoria se torna uma nova coluna binária. Essas colunas binárias indicam a presença ou ausência de uma categoria específica para cada entrada nos dados originais.
Sintaxe:
A sintaxe geral da função get_dummies()
é a seguinte:
<span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>prefix</span><span>=</span><span>None</span><span>,</span> <span>prefix_sep</span><span>=</span><span>'_'</span><span>,</span> <span>columns</span><span>=</span><span>None</span><span>,</span> <span>drop_first</span><span>=</span><span>False</span><span>,</span> <span>dtype</span><span>=</span><span>None</span><span>)</span><span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>prefix</span><span>=</span><span>None</span><span>,</span> <span>prefix_sep</span><span>=</span><span>'_'</span><span>,</span> <span>columns</span><span>=</span><span>None</span><span>,</span> <span>drop_first</span><span>=</span><span>False</span><span>,</span> <span>dtype</span><span>=</span><span>None</span><span>)</span>pd.get_dummies(data, prefix=None, prefix_sep='_', columns=None, drop_first=False, dtype=None)
Enter fullscreen mode Exit fullscreen mode
Parâmetros:
-
data
: DataFrame Pandas ou Series que contém as variáveis categóricas a serem convertidas em dummies. -
prefix
: Uma string ou lista de strings que será adicionada como prefixo aos nomes das novas colunas dummy. Se for uma lista, deve ter o mesmo tamanho da lista de colunas categóricas. -
prefix_sep
: Separador a ser utilizado entre o prefixo e o nome da categoria para as novas colunas dummy. -
columns
: Uma lista de colunas categóricas a serem transformadas em dummies. SeNone
, todas as colunas categóricas no DataFrame serão convertidas. -
drop_first
: Se forTrue
, a primeira categoria de cada variável categórica será omitida para evitar multicolinearidade. -
dtype
: O tipo de dados para as novas colunas dummy. Por padrão, énp.uint8
(unsigned integer de 8 bits).
Exemplos de Uso:
Exemplo 1: Criando variáveis dummy a partir de uma única coluna categórica
Vamos começar com um exemplo simples usando uma única coluna categórica em um DataFrame Pandas:
<span>import</span> <span>pandas</span> <span>as</span> <span>pd</span><span># DataFrame de exemplo </span><span>data</span> <span>=</span> <span>pd</span><span>.</span><span>DataFrame</span><span>({</span><span>'frutas'</span><span>:</span> <span>[</span><span>'maçã'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'maçã'</span><span>]})</span><span># Criando variáveis dummy </span><span>dummy_data</span> <span>=</span> <span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>prefix</span><span>=</span><span>'fruta'</span><span>,</span> <span>prefix_sep</span><span>=</span><span>'_'</span><span>)</span><span>print</span><span>(</span><span>dummy_data</span><span>)</span><span>import</span> <span>pandas</span> <span>as</span> <span>pd</span> <span># DataFrame de exemplo </span><span>data</span> <span>=</span> <span>pd</span><span>.</span><span>DataFrame</span><span>({</span><span>'frutas'</span><span>:</span> <span>[</span><span>'maçã'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'maçã'</span><span>]})</span> <span># Criando variáveis dummy </span><span>dummy_data</span> <span>=</span> <span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>prefix</span><span>=</span><span>'fruta'</span><span>,</span> <span>prefix_sep</span><span>=</span><span>'_'</span><span>)</span> <span>print</span><span>(</span><span>dummy_data</span><span>)</span>import pandas as pd # DataFrame de exemplo data = pd.DataFrame({'frutas': ['maçã', 'banana', 'laranja', 'banana', 'maçã']}) # Criando variáveis dummy dummy_data = pd.get_dummies(data, prefix='fruta', prefix_sep='_') print(dummy_data)
Enter fullscreen mode Exit fullscreen mode
Saída:
fruta_banana fruta_laranja fruta_maçã0 0 0 11 1 0 02 0 1 03 1 0 04 0 0 1fruta_banana fruta_laranja fruta_maçã 0 0 0 1 1 1 0 0 2 0 1 0 3 1 0 0 4 0 0 1fruta_banana fruta_laranja fruta_maçã 0 0 0 1 1 1 0 0 2 0 1 0 3 1 0 0 4 0 0 1
Enter fullscreen mode Exit fullscreen mode
No exemplo acima, a coluna “frutas” foi convertida em três novas colunas dummy: “fruta_banana”, “fruta_laranja” e “fruta_maçã”. Cada uma delas representa uma das frutas presentes na coluna original, onde o valor 1 indica que a fruta está presente e o valor 0 indica que não está.
Exemplo 2: Tratando múltiplas colunas categóricas
Agora, vamos usar um DataFrame com múltiplas colunas categóricas:
<span>import</span> <span>pandas</span> <span>as</span> <span>pd</span><span># DataFrame de exemplo </span><span>data</span> <span>=</span> <span>pd</span><span>.</span><span>DataFrame</span><span>({</span><span>'frutas'</span><span>:</span> <span>[</span><span>'maçã'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'maçã'</span><span>],</span><span>'cores'</span><span>:</span> <span>[</span><span>'vermelho'</span><span>,</span> <span>'amarelo'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'amarelo'</span><span>,</span> <span>'vermelho'</span><span>]</span><span>})</span><span># Criando variáveis dummy para as colunas 'frutas' e 'cores' </span><span>dummy_data</span> <span>=</span> <span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>columns</span><span>=</span><span>[</span><span>'frutas'</span><span>,</span> <span>'cores'</span><span>],</span> <span>prefix</span><span>=</span><span>[</span><span>'fruta'</span><span>,</span> <span>'cor'</span><span>])</span><span>print</span><span>(</span><span>dummy_data</span><span>)</span><span>import</span> <span>pandas</span> <span>as</span> <span>pd</span> <span># DataFrame de exemplo </span><span>data</span> <span>=</span> <span>pd</span><span>.</span><span>DataFrame</span><span>({</span> <span>'frutas'</span><span>:</span> <span>[</span><span>'maçã'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'maçã'</span><span>],</span> <span>'cores'</span><span>:</span> <span>[</span><span>'vermelho'</span><span>,</span> <span>'amarelo'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'amarelo'</span><span>,</span> <span>'vermelho'</span><span>]</span> <span>})</span> <span># Criando variáveis dummy para as colunas 'frutas' e 'cores' </span><span>dummy_data</span> <span>=</span> <span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>columns</span><span>=</span><span>[</span><span>'frutas'</span><span>,</span> <span>'cores'</span><span>],</span> <span>prefix</span><span>=</span><span>[</span><span>'fruta'</span><span>,</span> <span>'cor'</span><span>])</span> <span>print</span><span>(</span><span>dummy_data</span><span>)</span>import pandas as pd # DataFrame de exemplo data = pd.DataFrame({ 'frutas': ['maçã', 'banana', 'laranja', 'banana', 'maçã'], 'cores': ['vermelho', 'amarelo', 'laranja', 'amarelo', 'vermelho'] }) # Criando variáveis dummy para as colunas 'frutas' e 'cores' dummy_data = pd.get_dummies(data, columns=['frutas', 'cores'], prefix=['fruta', 'cor']) print(dummy_data)
Enter fullscreen mode Exit fullscreen mode
Saída:
fruta_banana fruta_laranja fruta_maçã cor_amarelo cor_laranja cor_vermelho0 0 0 1 0 0 11 1 0 0 1 0 02 0 1 0 0 1 03 1 0 0 1 0 04 0 0 1 0 0 1fruta_banana fruta_laranja fruta_maçã cor_amarelo cor_laranja cor_vermelho 0 0 0 1 0 0 1 1 1 0 0 1 0 0 2 0 1 0 0 1 0 3 1 0 0 1 0 0 4 0 0 1 0 0 1fruta_banana fruta_laranja fruta_maçã cor_amarelo cor_laranja cor_vermelho 0 0 0 1 0 0 1 1 1 0 0 1 0 0 2 0 1 0 0 1 0 3 1 0 0 1 0 0 4 0 0 1 0 0 1
Enter fullscreen mode Exit fullscreen mode
Neste exemplo, criamos variáveis dummy para as colunas “frutas” e “cores”. As novas colunas têm os prefixos “fruta_” e “cor_”, respectivamente, seguidos pela categoria correspondente.
Exemplo 3: Lidando com a primeira categoria omitida
Agora, vamos usar o parâmetro drop_first=True
para omitir a primeira categoria de cada variável categórica:
<span>import</span> <span>pandas</span> <span>as</span> <span>pd</span><span># DataFrame de exemplo </span><span>data</span> <span>=</span> <span>pd</span><span>.</span><span>DataFrame</span><span>({</span><span>'frutas'</span><span>:</span> <span>[</span><span>'maçã'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'maçã'</span><span>]})</span><span># Criando variáveis dummy com a primeira categoria omitida </span><span>dummy_data</span> <span>=</span> <span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>prefix</span><span>=</span><span>'fruta'</span><span>,</span> <span>prefix_sep</span><span>=</span><span>'_'</span><span>,</span> <span>drop_first</span><span>=</span><span>True</span><span>)</span><span>print</span><span>(</span><span>dummy_data</span><span>)</span><span>import</span> <span>pandas</span> <span>as</span> <span>pd</span> <span># DataFrame de exemplo </span><span>data</span> <span>=</span> <span>pd</span><span>.</span><span>DataFrame</span><span>({</span><span>'frutas'</span><span>:</span> <span>[</span><span>'maçã'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'laranja'</span><span>,</span> <span>'banana'</span><span>,</span> <span>'maçã'</span><span>]})</span> <span># Criando variáveis dummy com a primeira categoria omitida </span><span>dummy_data</span> <span>=</span> <span>pd</span><span>.</span><span>get_dummies</span><span>(</span><span>data</span><span>,</span> <span>prefix</span><span>=</span><span>'fruta'</span><span>,</span> <span>prefix_sep</span><span>=</span><span>'_'</span><span>,</span> <span>drop_first</span><span>=</span><span>True</span><span>)</span> <span>print</span><span>(</span><span>dummy_data</span><span>)</span>import pandas as pd # DataFrame de exemplo data = pd.DataFrame({'frutas': ['maçã', 'banana', 'laranja', 'banana', 'maçã']}) # Criando variáveis dummy com a primeira categoria omitida dummy_data = pd.get_dummies(data, prefix='fruta', prefix_sep='_', drop_first=True) print(dummy_data)
Enter fullscreen mode Exit fullscreen mode
Saída:
fruta_laranja fruta_maçã0 0 11 0 02 1 03 0 04 0 1fruta_laranja fruta_maçã 0 0 1 1 0 0 2 1 0 3 0 0 4 0 1fruta_laranja fruta_maçã 0 0 1 1 0 0 2 1 0 3 0 0 4 0 1
Enter fullscreen mode Exit fullscreen mode
Neste exemplo, a primeira categoria (“banana”) foi omitida em cada variável categórica, resultando em duas novas colunas dummy: “fruta_laranja” e “fruta_maçã”.
Conclusão:
A função get_dummies()
do Pandas é uma poderosa ferramenta para transformar variáveis categóricas em representações numéricas, tornando-as adequadas para análise de dados e modelagem estatística. Com este artigo, você aprendeu como usar a função get_dummies()
e explorou exemplos práticos para sua aplicação. Lembre-se de que a função possui diversos parâmetros opcionais para personalização, permitindo que você ajuste a saída de acordo com as necessidades específicas do seu projeto. Experimente get_dummies()
em seus próprios conjuntos de dados e explore a versatilidade que
Data Science (27 Part Series)
1 Aprimorando a Seleção, Filtragem e Agrupamento de Dados no Pandas
2 Operadores Relacionais e Lógicos no Pandas: Simplificando a Filtragem de Dados
… 23 more parts…
3 Python Pandas: Explorando a Função “read” e suas Possibilidades
4 Desmistificando e Simplificando a Biblioteca NumPy em Python
5 Explorando Estruturas de Dados e Laços no Python: Sets, Arrays, Loops, Listas e Dicionários
6 Explorando as Funções Básicas no Python Pandas: Manipulação e Análise de Dados Simplificadas
7 Simplificando a Análise de Dados Textuais com Manipulação de Strings no Pandas
8 Desvendando a Sintaxe das Expressões Regulares em Python: Um Guia Completo
9 Utilização e Aplicação do Método melt() no Pandas
10 Utilização e Aplicação do `json_normalize()` no Pandas
11 Introdução ao método `apply()` e lambda no Pandas: Um Guia Completo
12 Tratamento de Dados Nulos no Pandas: Uma Abordagem Completa e Detalhada
13 Pandas `get_dummies`: Uma Abordagem Completa com Exemplos
14 Tratamento de Outliers no Pandas: Estratégias e Exemplos
15 Introdução ao Pandas: Unindo DataFrames
16 A Função `loc` do Pandas: Filtragem Detalhada e Exemplos Práticos
17 Detalhando os Diferentes Tipos de Leitura e suas parâmetros Função `read()` no Pandas
18 Guia Avançado do Método `merge` no Pandas com Exemplos
19 O Método `cut` do Pandas: Uma Ferramenta Poderosa para a Segmentação de Dados
20 Projeto de Data Science: Análise de Dados do Airbnb
21 Uma Jornada pelo Universo da Amostragem em Data Science com Python: Teoria e Prática
22 Uma Exploração Abrangente da Estatística Descritiva em Data Science com Python: Exemplos Práticos com Dataset Fictício
23 Explorando os Quantis e Quartis em Data Science com Python: Uma Análise Detalhada com Exemplos Práticos e Dataset Fictício
24 Desvendando as Relações com Correlação de Dados em Data Science usando Python: Exemplos Práticos com Dataset Fictício
25 Explorando a Poderosa Representação Gráfica em Data Science com Python: Exemplos Práticos com Dataset Fictício
26 Google Cloud Storage com Python: Um Guia Completo
27 Explorando as Funções Específicas da Biblioteca google-cloud-storage no Google Cloud Platform
原文链接:Pandas `get_dummies`: Uma Abordagem Completa com Exemplos
暂无评论内容