Dados Qualitativos - Problema 1 Página 13

# Criando os vetores com os dados
destino <- c("Habitação", "Automóvel", "Férias", "Investimentos", "Outros Destinos")
num_pessoas <- c(160, 40, 72, 80, 48)

# Criando o data frame
tabela <- data.frame(Destino = destino, N_Pessoas = num_pessoas)

# Calculando a frequência absoluta (fi)
tabela$fi <- num_pessoas

# Calculando a frequência relativa (fri)
tabela$fri <- num_pessoas / sum(num_pessoas)

# Calculando a frequência acumulada (fai)
tabela$fai <- cumsum(tabela$fi)

# Calculando a dimensão dos setores (ângulos em graus)
tabela$angulos <- round(tabela$fri * 360, 2)  # 360 graus no total

# Adicionando uma linha de totais
totais <- data.frame(
  Destino = "Total",
  N_Pessoas = sum(tabela$N_Pessoas),
  fi = sum(tabela$fi),
  fri = sum(tabela$fri),
  fai = sum(tabela$fai),
  angulos = 360
)
tabela <- rbind(tabela, totais)

# Exibindo a tabela
print(tabela)
##           Destino N_Pessoas  fi  fri  fai angulos
## 1       Habitação       160 160 0.40  160   144.0
## 2       Automóvel        40  40 0.10  200    36.0
## 3          Férias        72  72 0.18  272    64.8
## 4   Investimentos        80  80 0.20  352    72.0
## 5 Outros Destinos        48  48 0.12  400    43.2
## 6           Total       400 400 1.00 1384   360.0
# Criando o gráfico de pizza (diagrama circular)
pie(tabela$fi[1:5], labels = tabela$Destino[1:5], main = "Destino de Financiamento", col = rainbow(5))

fri <- num_pessoas / sum(num_pessoas) #vector com os dados da freq relativa (até aqui estavam apenas na tabela)

# Criando o gráfico de barras
barplot(
  fri,                                  # Valores das barras (frequência relativa)
  names.arg = destino,                  # Rótulos das barras
  main = "Destino de Financiamento",    # Título do gráfico
  xlab = "Destino",                     # Rótulo do eixo X
  ylab = "Frequência Relativa (fri)",   # Rótulo do eixo Y
  col = rainbow(length(destino)),       # Cores das barras
  ylim = c(0, max(fri) + 0.1)            # Limites do eixo Y
)

Dados Qualitativos - Problema 2 Página 16

Distribuição das classificações de 120 alunos que fizeram exame numa determinada escola

#Dados Iniciais
classif <- c("Muito Bom", "Bom", "Suficiente", "Insuficiente", "Insatisfatório")
classif_num <- c(9, 24, 54, 27, 6)

#Criar a tabela
classif_table <- data.frame(Classifi = classif, ni = classif_num)

classif_table$fi <- classif_num / sum(classif_num) # Freq relativa
classif_table$fi_ac <- cumsum(classif_table$fi) #freq acumulada
classif_table$angulos_sector <- round(classif_table$fi * 360, 2)


#Adicionando uma linha de totais
totais_classif <- data.frame(
  Classifi = "Total",
  ni = sum(classif_table$ni),
  fi = sum(classif_table$fi),
  fi_ac = sum(classif_table$fi_ac),
  angulos_sector = 360
)
classif_table <- rbind(classif_table, totais_classif)

print(classif_table)
##         Classifi  ni    fi fi_ac angulos_sector
## 1      Muito Bom   9 0.075 0.075             27
## 2            Bom  24 0.200 0.275             72
## 3     Suficiente  54 0.450 0.725            162
## 4   Insuficiente  27 0.225 0.950             81
## 5 Insatisfatório   6 0.050 1.000             18
## 6          Total 120 1.000 3.025            360
#Bar Plot

fi <-classif_num / sum(classif_num)

barplot(
    fi,                                  # Valores das barras (frequência relativa)
    names.arg = classif,                  # Rótulos das barras
  main = "Classificações dos exames",    # Título do gráfico
  xlab = "Classificação",                     # Rótulo do eixo X
  ylab = "frequencia Relativa",      # Rótulo do eixo Y
  col = rainbow(length(classif)),       # Cores das barras
  ylim = c(0, 1)        # Limites do eixo Y
)

pie(classif_table$angulos_sector[1:5], labels = classif_table$Classif[1:5], main = "Classificações dos exames", col = rainbow(5))

Dados Quantitativos - Problema 4 Página 21

# Vetor com as regiões NUTS III
Regiao <- c(
  "Minho-Lima", "Cávado", "Ave", "Grande Porto", "Tâmega", "Entre Douro e Vouga",
  "Douro", "Alto Trás-os-Montes", "Baixo Vouga", "Baixo Mondego", "Pinhal Litoral",
  "Pinhal Interior Norte", "Dão Lafões", "Pinhal Interior Sul", "Serra da Estrela",
  "Beira Interior Norte", "Beira Interior Sul", "Cova da Beira", "Oeste", "Médio Tejo",
  "Grande Lisboa", "Península de Setúbal", "Alentejo Litoral", "Alto Alentejo",
  "Alentejo Central", "Baixo Alentejo", "Lezíria do Tejo", "Algarve", "R.A. Açores",
  "R.A. Madeira"
)

# Vetor com o número de vilas por região
vilas <- c(
  13, 10, 20, 32, 35, 24, 40, 17, 30, 23, 12, 19, 26, 6, 6, 11, 6, 11, 29, 10, 34, 16, 8, 12, 13, 15, 21, 31, 21, 10
)

Gráfico de pontos:

stripchart(vilas, method = "stack", pch = 21, at = 0, offset = 1.5 , xlab = "Número de Vilas")

Caule-e-folhas

stem(vilas)
## 
##   The decimal point is 1 digit(s) to the right of the |
## 
##   0 | 6668
##   1 | 000112233
##   1 | 5679
##   2 | 01134
##   2 | 69
##   3 | 0124
##   3 | 5
##   4 | 0

Dados Quantitativos Problema 6

Página 26

Durante 150 jogos registaram-se os golos marcados em cada desafio por um clube de futebol

golos <- c(rep(0,24), rep(1,50), rep(2,28), rep(3,22), rep(4,16), rep(5,10))
print(table(golos))  ## table() constroi uma tabela de frequências
## golos
##  0  1  2  3  4  5 
## 24 50 28 22 16 10
  1. represente graficamente os dados
barplot(table(golos)) ## grafico de barras com valores absolutos

#Gráfico de Barras com frequência relativa
g_freq_rel <- table(golos)/sum(table(golos))
barplot(g_freq_rel, ylim=c(0,1),xlab = "Nº de Golos", ylab="Frequência Relativa")

b) determine as freq acumuladas

g_freq_cum <- cumsum(g_freq_rel)
tabela_golos_orig <- data.frame(table(golos), g_freq_rel, g_freq_cum)
#eliminar as colunas repetidas (golos.1 e Freq.1)
tabela_golos = subset(tabela_golos_orig, select = -c(golos.1,Freq.1) )

print(tabela_golos)
##   golos Freq g_freq_cum
## 0     0   24  0.1600000
## 1     1   50  0.4933333
## 2     2   28  0.6800000
## 3     3   22  0.8266667
## 4     4   16  0.9333333
## 5     5   10  1.0000000
  1. cálculo da Média
# Converter a coluna 'golos' para numérica
tabela_golos$golos <- as.numeric(as.character(tabela_golos$golos))

# Calcular a média a partir dos dados originais
mean_original <- mean(golos)
# Calcular a média a partir da tabela_golos
mean_tabela <- sum(tabela_golos$golos * tabela_golos$Freq) / sum(tabela_golos$Freq)

#Exibir os resultados
print(paste("Média a partir dos dados originais:", mean_original))
## [1] "Média a partir dos dados originais: 1.90666666666667"
print(paste("Média a partir da tabela_golos:", mean_tabela))
## [1] "Média a partir da tabela_golos: 1.90666666666667"
  1. Calculo da variancia

variancia: \(s^2 = \frac{1}{n} \sum_{}(x^2- \bar{x}^2)\)