dados <- read.csv("Dados_Funcionarios.csv", sep=",", header=TRUE)
head(dados)
## Funcionario Est.civil Inst Filhos Salario Anos Meses Regiao
## 1 1 solteiro 1o Grau NA 4.00 26 3 interior
## 2 2 casado 1o Grau 1 4.56 32 10 capital
## 3 3 casado 1o Grau 2 5.25 36 5 capital
## 4 4 solteiro 2o Grau NA 5.73 20 10 outro
## 5 5 solteiro 1o Grau NA 6.26 40 7 outro
## 6 6 casado 1o Grau 0 6.66 28 0 interior
freq_abs <- table(dados$Est.civil)
print(freq_abs)
##
## casado solteiro
## 20 16
freq_rel <- prop.table(freq_abs)
print(freq_rel)
##
## casado solteiro
## 0.5555556 0.4444444
barplot(freq_abs, main="Estado Civil - Frequência Absoluta", col="lightblue")
pie(freq_abs, main="Estado Civil - Distribuição", col=rainbow(length(freq_abs)))
freq_abs_inst <- table(dados$Inst)
print(freq_abs_inst)
##
## 1o Grau 2o Grau Superior
## 12 18 6
freq_rel_inst <- prop.table(freq_abs_inst)
print(freq_rel_inst)
##
## 1o Grau 2o Grau Superior
## 0.3333333 0.5000000 0.1666667
barplot(freq_abs_inst, main="Grau de Instrução - Frequência Absoluta", col="orange")
pie(freq_abs_inst, main="Grau de Instrução - Distribuição", col=rainbow(length(freq_abs_inst)))
freq_abs_filhos <- table(dados$Filhos)
print(freq_abs_filhos)
##
## 0 1 2 3 5
## 4 5 7 3 1
freq_rel_filhos <- prop.table(freq_abs_filhos)
print(freq_rel_filhos)
##
## 0 1 2 3 5
## 0.20 0.25 0.35 0.15 0.05
freq_acum_filhos <- cumsum(freq_abs_filhos)
print(freq_acum_filhos)
## 0 1 2 3 5
## 4 9 16 19 20
barplot(freq_rel_filhos, main="Número de Filhos - Frequência Relativa", col="blue")
plot(freq_acum_filhos, type="o", main="Número de Filhos - Frequência Acumulada", col="red")
min_salario <- min(dados$Salario)
max_salario <- max(dados$Salario)
k <- round(1 + 3.322 * log10(nrow(dados)))
cat("Mínimo:", min_salario, " | Máximo:", max_salario, " | Número de Classes:", k)
## Mínimo: 4 | Máximo: 23.3 | Número de Classes: 6
hist(dados$Salario, breaks=k, main="Distribuição dos Salários", col="lightgreen", xlab="Salário")
tabela_contingencia <- table(dados$Est.civil, dados$Inst)
print(tabela_contingencia)
##
## 1o Grau 2o Grau Superior
## casado 5 12 3
## solteiro 7 6 3
barplot(tabela_contingencia, beside=TRUE, col=rainbow(ncol(tabela_contingencia)), legend=TRUE, main="Estado Civil vs Grau de Instrução")
boxplot(Salario ~ Inst, data=dados, main="Boxplot - Salário por Grau de Instrução", col="purple")
### (b) Média e Desvio Padrão dos Salários por Grau de
Instrução
media_salario <- tapply(dados$Salario, dados$Inst, mean)
desvio_salario <- tapply(dados$Salario, dados$Inst, sd)
print(media_salario)
## 1o Grau 2o Grau Superior
## 7.836667 11.528333 16.475000
print(desvio_salario)
## 1o Grau 2o Grau Superior
## 2.956464 3.715144 4.502438
dados$Idade <- dados$Anos + dados$Meses / 12
plot(dados$Idade, dados$Salario, main="Salário vs Idade", xlab="Idade", ylab="Salário", col="darkblue")
### (b) Cálculo da Correlação
correlacao <- cor(dados$Idade, dados$Salario)
cat("Correlação entre Salário e Idade:", correlacao)
## Correlação entre Salário e Idade: 0.3651397
media_salario <- mean(dados$Salario, na.rm=TRUE)
print(paste("Média dos Salários:", round(media_salario, 2)))
## [1] "Média dos Salários: 11.12"
variancia_salario <- var(dados$Salario, na.rm=TRUE)
print(paste("Variância dos Salários:", round(variancia_salario, 2)))
## [1] "Variância dos Salários: 21.04"
desvio_padrao_salario <- sd(dados$Salario, na.rm=TRUE)
print(paste("Desvio Padrão dos Salários:", round(desvio_padrao_salario, 2)))
## [1] "Desvio Padrão dos Salários: 4.59"
mediana_salario <- median(dados$Salario, na.rm=TRUE)
print(paste("Mediana dos Salários:", round(mediana_salario, 2)))
## [1] "Mediana dos Salários: 10.16"
quartis_salario <- quantile(dados$Salario, probs=c(0, 0.25, 0.5, 0.75, 1), na.rm=TRUE)
print("Quartis dos Salários:")
## [1] "Quartis dos Salários:"
print(quartis_salario)
## 0% 25% 50% 75% 100%
## 4.0000 7.5525 10.1650 14.0600 23.3000