################################################################################ # # # EXEMPLOS AULA 15: Pratica de Analise Descritiva - GE # # # ################################################################################ # LIMPAR R rm(list = ls()); cat('\014') # DIRETÓRIO setwd(dirname(rstudioapi::getActiveDocumentContext()$path)) # PACOTES NECESSÁRIOS: importar dados em excel e fazer gráfico de Pareto if(!require(readxl)) install.packages("readxl"); library(readxl) if(!require(qcc)) install.packages("qcc", dep = T); library(qcc) ################################################################################ # # # EXEMPLO 1 - EMPREGADOS # # # ########################## # Link dos dados # https://edisciplinas.usp.br/mod/resource/view.php?id=3630026 # Importar conjunto de dados dados1 = read_excel("Empregados.xlsx") dados1 = dados1[,-1] # Excluir a primeira coluna do conjunto de dados # Visualizar o conjunto de dados head(dados1) # 6 primeiras linhas tail(dados1) # 6 últimas linhas edit(dados1) View(dados1) # Identifica as variáveis names(dados1) # 'Chamar' variáveis attach(dados1) # Este comando permite chamar diretamente a variável desejada do conjunto de # dados, sem ter que identificar a variável usando dados$... # Classificar as variáveis str(dados1) # Essa função permite verificar que: # -> Estado_Civil, Grau_Instrucao e Regiao são variáveis qualitativas; # -> N_Filhos, Salario_Min, Idade_Anos e Idade_Meses são quantitativas. ############################ Variáveis Qualitativas ############################ # Tabela de frequências table(Estado_Civil) # Se não usar attach(), precisa escrever dados1$Estado_Civil table(Grau_Instrucao) table(Regiao) # Gráfico de barras x11() # Abre o gráfico em uma janela externa par(mfrow = c(2,2)) # Plotar 4 gráficos juntos, distrib. em 2 linhas e 2 colunas barplot(table(Estado_Civil), main = "Estado Civil") barplot(table(Grau_Instrucao), main = "Grau de Instrucao") barplot(table(Regiao), main = "Regiao") # Proporção dos setores das variáveis multiplicado por 100 (Porcentagem) # Muito últi para construir gráfico de pizza propEC = prop.table(table(Estado_Civil))*100 propGI = prop.table(table(Grau_Instrucao))*100 propR = prop.table(table(Regiao))*100 # Arredondar proporções para 2 casas decimais propEC = round( propEC, 2 ); propEC propGI = round( propGI, 2 ); propGI propR = round( propR, 2 ); propR # Gráfico de pizza adicionado de legenda, que foi criada usando comando legend() x11() pie(table(Estado_Civil), main = "Estado Civil", labels = c("55,56 %", "44,44%"), col = c(2,3)) legend("topright", fill = c(2,3), legend = c("casado", "solteiro")) x11() pie(table(Grau_Instrucao), main = "Grau de Instrução", labels = c("33.33%", "50.00%", "16.67%"), col = c(2,3,4)) legend("topleft", fill = c(2,3,4), legend = c("fundamental", "medio", "superior")) x11() pie(table(Regiao), main = "Região", labels = c("30.56%", "33.33%", "36.11%"), col = c(2,3,4)) legend("bottomleft", fill = c(2,3,4), legend = c("capital", "interior", "outra")) # Gráfico de Pareto pareto.chart(table(Estado_Civil), main = "Estado Civil", las = 1) pareto.chart(table(Grau_Instrucao), main = "Grau de Instrucao", las = 1) pareto.chart(table(Regiao), main = "Regiao", las = 1) ############################ Variáveis Quantitativas ########################### # Resumo das variáveis: mínimo, máximo, quantil, média, NAs quando tiver summary(N_Filhos) summary(Salario_Min) summary(Idade_Anos) summary(Idade_Meses) # Histograma x11() par(mfrow = c(2,2)) hist(N_Filhos, main = "Número de Filhos", col = 2) hist(Salario_Min, main = "Salário Mínimo", col = "purple") hist(Idade_Anos, main = "Idade Anos", col = 5) hist(Idade_Meses, main = "Idade Meses", col = "orange") # Plots plot(N_Filhos, main = "Numero de Filhos") plot(Salario_Min, main = "Salario Minimo") plot(Idade_Anos, main = "Anos") plot(Idade_Meses, main = "Meses") # Boxplot x11() par(mfrow = c(2,2)) boxplot(dados1$N_Filhos, main = "Número de Filhos") boxplot(dados1$Salario_Min, main = "Salário Mínimo") boxplot(dados1$Idade_Anos, main = "Idade Anos") boxplot(dados1$Idade_Meses, main = "Idade Meses") ################################################################################ # # # EXEMPLO 2 - VEÍCULOS # # # ######################## # link dos dados # https://edisciplinas.usp.br/mod/resource/view.php?id=3630051 dados2 = read_excel("Veiculos.xlsx") head(dados2) View(dados2) names(dados2) attach(dados2) str(dados2) # Veiculo e N/I são variáveis qualitativas; # Preco, Comprimento e Motos são variáveis quantitativa. ############################ Variáveis Qualitativas ############################ # Tabela de frequências table(Veiculo) table(`N/I`) # Gráfico de barras barplot(table(Veiculo), main = "Veiculo") barplot(table(`N/I`), main = "Nacionais ou Importados") # Gráfico de pizza pie(table(dados2$Veiculo), main = "Veiculo") pie(table(dados2$`N/I`), main = "Nacionais ou Importados") # Gráfico de Pareto pareto.chart(table(dados2$Veiculo), main = "Veiculo", las = 1) pareto.chart(table(dados2$`N/I`), main = "Nacionais ou Importados", las = 1) ############################ Variáveis Quantitativas ########################### # Resumo das varáveis summary(Preco) summary(Comprimento) summary(Motor) # Histograma x11() par(mfrow = c(2,2)) hist(Preco, main = "Preço") hist(Comprimento, main = "Comprimento") hist(Motor, main = "Motor") # Plot plot(Preco, main = "Preco") plot(Comprimento, main = "Comprimento") plot(Motor, main = "Motor") # Boxplot x11() par(mfrow = c(1,3)) boxplot(Preco, main = "Preco") boxplot(Comprimento, main = "Comprimento") boxplot(Motor, main = "Motor") ################################################################################ # # # ANÁLISE BIVARIADA - EXEMPLO 1 # # # ################################# # Variáveis qualitativa table(N_Filhos, Regiao) # Tabela de Frequências de número de filhos # de acordo com a região; table(Grau_Instrucao, Regiao) # Tabela de Frequências de grau de instrução # de acordo com a região; table(Estado_Civil, Grau_Instrucao) # Tabela de Frequências de estado civil de # acordo com grau de instrução. # Variáveis quantitativa tapply(Salario_Min, Grau_Instrucao, summary) # Resumo de salário mínimo de # acordo com o grau de instrução # Boxplot x11() boxplot(Salario_Min ~ Grau_Instrucao) x11() boxplot(Salario_Min ~ Regiao) # Correlação cor(Idade_Anos, Salario_Min) # Correlação 0,36. Como é positiva, podemos dizer # que há indícios de que, com o passar da idade, # a quantidade de salários mínimos recebidos pelo # funcionário aumenta. # Plot x11() plot(Idade_Anos, Salario_Min) # Podemos confirmar a correlação através do plot.