Transformação de Dados
Transformação de dados é uma etapa crucial na preparação de dados brutos para análise. Envolve modificar, adicionar ou recodificar variáveis para tornar os dados mais significativos e prontos para análise.
Criação de Novas Colunas
Uma transformação comum é calcular novas métricas a partir de colunas existentes. Por exemplo, pode-se calcular o preço por quilômetro para avaliar o quão econômico é um veículo.
Base R
É possível criar uma nova coluna utilizando o operador $
para definir seu nome e atribuir valores a ela.
df$price_per_km <- df$selling_price / df$km_driven
head(df)
dplyr
Novas colunas podem ser adicionadas utilizando a função mutate()
. Dentro de mutate()
, é necessário especificar o nome da nova coluna e definir como ela deve ser calculada.
df <- df %>%
mutate(price_per_km = selling_price / km_driven)
Conversão e Transformação de Dados Numéricos em Texto
Em conjuntos de dados reais, informações numéricas frequentemente são armazenadas como texto combinado com caracteres não numéricos. Por exemplo, valores de potência do motor podem aparecer como "68 bhp", que precisam ser limpos e convertidos antes da análise.
Base R
É possível utilizar gsub()
para remover textos indesejados e, em seguida, aplicar as.numeric()
para converter o resultado em números. Após a conversão, podem ser realizadas transformações adicionais, como converter brake horsepower (bhp) em kilowatts.
df$max_power <- as.numeric(gsub(" bhp", "", df$max_power))
df$max_power_kw <- df$max_power * 0.7457 # convert to kilowatts
dplyr
O mesmo processo pode ser simplificado dentro de uma chamada mutate()
. É possível combinar substituição de texto, conversão de tipo e criação de nova coluna em um único passo, tornando o código mais limpo e fácil de ler.
df <- df %>%
mutate(
max_power = as.numeric(gsub(" bhp", "", max_power)),
max_power_kw = max_power * 0.7457
)
Categorização de Dados
É possível criar novas variáveis categóricas agrupando valores contínuos em categorias significativas. Por exemplo, carros podem ser classificados em faixas de preço Baixa, Média ou Alta com base no preço de venda.
Base R
Isso pode ser feito com instruções ifelse()
aninhadas. Cada condição é verificada em ordem, e o valor é atribuído de acordo.
df$price_category <- ifelse(df$selling_price < 300000, "Low",
ifelse(df$selling_price < 700000, "Medium", "High"))
dplyr
Você pode usar a função case_when()
como substituta para declarações if-else aninhadas. Isso permite que múltiplas condições sejam escritas em um formato limpo e legível.
df <- df %>%
mutate(price_category = case_when(
selling_price < 300000 ~ "Low",
selling_price < 700000 ~ "Medium",
TRUE ~ "High"
))
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo
Awesome!
Completion rate improved to 4
Transformação de Dados
Deslize para mostrar o menu
Transformação de dados é uma etapa crucial na preparação de dados brutos para análise. Envolve modificar, adicionar ou recodificar variáveis para tornar os dados mais significativos e prontos para análise.
Criação de Novas Colunas
Uma transformação comum é calcular novas métricas a partir de colunas existentes. Por exemplo, pode-se calcular o preço por quilômetro para avaliar o quão econômico é um veículo.
Base R
É possível criar uma nova coluna utilizando o operador $
para definir seu nome e atribuir valores a ela.
df$price_per_km <- df$selling_price / df$km_driven
head(df)
dplyr
Novas colunas podem ser adicionadas utilizando a função mutate()
. Dentro de mutate()
, é necessário especificar o nome da nova coluna e definir como ela deve ser calculada.
df <- df %>%
mutate(price_per_km = selling_price / km_driven)
Conversão e Transformação de Dados Numéricos em Texto
Em conjuntos de dados reais, informações numéricas frequentemente são armazenadas como texto combinado com caracteres não numéricos. Por exemplo, valores de potência do motor podem aparecer como "68 bhp", que precisam ser limpos e convertidos antes da análise.
Base R
É possível utilizar gsub()
para remover textos indesejados e, em seguida, aplicar as.numeric()
para converter o resultado em números. Após a conversão, podem ser realizadas transformações adicionais, como converter brake horsepower (bhp) em kilowatts.
df$max_power <- as.numeric(gsub(" bhp", "", df$max_power))
df$max_power_kw <- df$max_power * 0.7457 # convert to kilowatts
dplyr
O mesmo processo pode ser simplificado dentro de uma chamada mutate()
. É possível combinar substituição de texto, conversão de tipo e criação de nova coluna em um único passo, tornando o código mais limpo e fácil de ler.
df <- df %>%
mutate(
max_power = as.numeric(gsub(" bhp", "", max_power)),
max_power_kw = max_power * 0.7457
)
Categorização de Dados
É possível criar novas variáveis categóricas agrupando valores contínuos em categorias significativas. Por exemplo, carros podem ser classificados em faixas de preço Baixa, Média ou Alta com base no preço de venda.
Base R
Isso pode ser feito com instruções ifelse()
aninhadas. Cada condição é verificada em ordem, e o valor é atribuído de acordo.
df$price_category <- ifelse(df$selling_price < 300000, "Low",
ifelse(df$selling_price < 700000, "Medium", "High"))
dplyr
Você pode usar a função case_when()
como substituta para declarações if-else aninhadas. Isso permite que múltiplas condições sejam escritas em um formato limpo e legível.
df <- df %>%
mutate(price_category = case_when(
selling_price < 300000 ~ "Low",
selling_price < 700000 ~ "Medium",
TRUE ~ "High"
))
Obrigado pelo seu feedback!