VADeaths

Visualize o dataset VADeaths (já incluído no R) e crie um gráfico de barras empilhadas desses dados, de modo que as barras estejam agrupadas (lado a lado) para cada categoria. Também defina uma cor diferente para cada grupo das categorias. Por fim, adicione título, legenda e nomes nos eixos. Abaixo submeta o link do RPubs com o resultado dessa questão. Ela deve ficar dentro de uma aba chamada de “VADeaths”.

# Carrega o conjunto de dados VADeaths
data(VADeaths)

# Define as cores para cada grupo
colors <- c("lightblue", "mistyrose", "lightcyan", "lightyellow", "lavender")

# Cria o gráfico de barras agrupadas
barplot(VADeaths, 
        beside = TRUE,
        col = colors,
        main = "Taxas de Mortalidade na Virgínia (1940)",
        xlab = "Grupos Etários",
        ylab = "Taxa de Mortalidade por 1000 habitantes",
        legend.text = rownames(VADeaths),
        args.legend = list(x = "topright", bty = "n", inset = c(0.05, 0)))

ClassificaçãoDoença

Uma doença pode ser classificada em três estágios (leve, moderado e severo). Foram examinados 20 pacientes e obtidos os dados: moderado, leve, leve, severo, leve, moderado, moderado, moderado, leve, leve, severo,leve, moderado, moderado, leve, severo, moderado, moderado, moderado,leve. Com base nestes dados crie um gráfico de piza. Inclua a porcentagem de cada fatia, as cores das fatias e o nome do gráfico. Adicionalmente, use o comando legend() para incluir a legenda do gráfico. Abaixo submeta o link do RPubs com o resultado dessa questão. Ela deve ficar dentro de uma aba chamada de “ClassificaçãoDoença”. Note que apenas um link do RPubs é necessário. Basta repetir o link abaixo se você já tiver submetido para outras questões.

# Coleta os dados
dados <- c("moderado", "leve", "leve", "severo", "leve", "moderado", "moderado", 
           "moderado", "leve", "leve", "severo", "leve", "moderado", "moderado", 
           "leve", "severo", "moderado", "moderado", "moderado", "leve")

# Conta a frequência de cada estágio da doença
contagem <- table(dados)

# Define as cores para cada fatia
cores <- c("leve" = "lightgreen", "moderado" = "gold", "severo" = "tomato")
# Reordena as cores para corresponder à ordem da 'contagem'
cores_ordenadas <- cores[names(contagem)]


# Calcula as porcentagens
porcentagens <- round(100 * contagem / sum(contagem), 1)
rotulos <- paste(names(contagem), "\n", porcentagens, "%", sep="")

# Cria o gráfico de pizza
pie(contagem, 
    labels = rotulos, 
    col = cores_ordenadas, 
    main = "Distribuição de Pacientes por Estágio da Doença",
    cex = 0.8)

# Adiciona a legenda
legend("topright", 
       legend = names(contagem), 
       fill = cores_ordenadas, 
       title = "Estágios")

Teorema

Nesta questão, demonstre o uso do teorema do limite central, usando o conjunto de dados “flu” que é altamente não normal. Esse dataset contém as frequências das idades das mortes durante a epidemia de gripe espanhola na Suíça em 1918. Considere a idade das mortes como a população. Execute os passos a seguir. (1)Mostre o histograma e a curva de densidade do conjunto de dados “flu”. (2) Crie 200 médias de amostras da população com tamanho n = 35. (3) Mostre o histograma com a curva de densidade para a médias das amostras. 4) Submeta o link do RPubs com o resultado das etapas anteriores . Essa questão deve ficar dentro de uma aba chamada de “Teorema”. Note que apenas um link do RPubs é necessário. Basta repetir o link abaixo se você já tiver submetido para outras questões.

# Carregar os dados e preparar o ambiente

#install.packages("ggplot2") 
library(ggplot2)

# Lê o conjunto de dados
dados_flu <- read.csv("flu.csv")
populacao <- dados_flu$age

# Define parâmetros para a amostragem
tamanho_amostra <- 35
numero_amostras <- 200


# 1. Histograma e curva de densidade da população

# A distribuição original é altamente enviesada (não normal)
hist(populacao, 
     main = "Distribuição da Idade das Mortes (População)",
     xlab = "Idade",
     ylab = "Frequência",
     freq = FALSE, # Para plotar densidade em vez de frequência
     col = "peachpuff",
     breaks = 30)
lines(density(populacao), col = "red", lwd = 2)

# 2. 200 médias de amostras de tamanho n = 35

# Usa-se a função replicate para repetir o processo de amostragem e cálculo da média 200 vezes
medias_amostrais <- replicate(numero_amostras, mean(sample(populacao, tamanho_amostra, replace = TRUE)))
medias_amostrais
##   [1] 45.80000 42.34286 46.48571 34.91429 44.05714 49.08571 51.97143 49.71429
##   [9] 34.45714 48.88571 44.65714 34.85714 45.25714 47.74286 41.02857 44.20000
##  [17] 46.71429 43.97143 40.68571 45.11429 38.94286 45.25714 38.65714 49.54286
##  [25] 45.54286 37.42857 45.51429 33.91429 45.91429 41.17143 46.97143 49.82857
##  [33] 35.45714 30.60000 49.97143 45.45714 42.88571 41.65714 48.31429 48.97143
##  [41] 44.45714 39.82857 51.65714 42.91429 45.14286 48.77143 40.25714 43.42857
##  [49] 45.40000 45.71429 46.62857 42.88571 31.14286 35.65714 44.57143 36.94286
##  [57] 44.65714 47.71429 47.51429 48.71429 51.91429 46.57143 42.40000 47.71429
##  [65] 48.25714 31.85714 49.22857 43.08571 39.40000 39.48571 45.02857 48.42857
##  [73] 36.71429 49.34286 43.31429 49.74286 32.00000 46.14286 50.20000 41.28571
##  [81] 41.91429 40.91429 38.17143 49.08571 44.28571 47.17143 41.71429 37.08571
##  [89] 38.25714 48.22857 44.82857 41.20000 42.17143 36.28571 47.51429 42.25714
##  [97] 44.34286 40.08571 48.05714 48.02857 40.54286 46.17143 44.37143 37.02857
## [105] 42.65714 43.97143 41.20000 45.02857 41.37143 38.97143 36.94286 38.85714
## [113] 45.85714 37.25714 34.11429 42.28571 42.68571 42.77143 49.94286 48.00000
## [121] 39.60000 45.77143 42.20000 52.34286 44.85714 46.14286 48.31429 39.74286
## [129] 36.17143 45.60000 42.62857 41.54286 37.00000 36.77143 42.31429 51.88571
## [137] 48.14286 32.74286 41.62857 40.60000 40.77143 34.94286 51.62857 36.82857
## [145] 38.57143 47.05714 40.25714 41.71429 47.51429 42.54286 41.11429 43.14286
## [153] 48.34286 48.68571 46.31429 42.97143 43.54286 50.08571 37.31429 41.05714
## [161] 43.54286 39.88571 40.34286 45.80000 43.14286 41.91429 46.88571 45.02857
## [169] 37.88571 42.71429 39.22857 44.82857 41.82857 49.57143 49.42857 41.54286
## [177] 40.42857 38.05714 44.94286 45.94286 47.85714 45.17143 37.42857 49.71429
## [185] 28.00000 41.74286 41.62857 45.97143 53.02857 41.25714 47.60000 41.25714
## [193] 49.82857 46.05714 42.85714 38.51429 42.80000 47.11429 41.22857 46.77143
# 3. Histograma e curva de densidade das médias amostrais

# Pelo Teorema do Limite Central, esta distribuição deve se aproximar de uma normal
hist(medias_amostrais, 
     main = "Distribuição das Médias Amostrais (n=35)",
     xlab = "Média da Idade",
     ylab = "Frequência",
     freq = FALSE, # Para plotar densidade
     col = "lightblue",
     breaks = 15)

# Adiciona a curva de densidade estimada dos dados
lines(density(medias_amostrais), col = "blue", lwd = 2)

# Adiciona uma curva normal teórica para comparação
x_fit <- seq(min(medias_amostrais), max(medias_amostrais), length = 100)
y_fit <- dnorm(x_fit, mean = mean(medias_amostrais), sd = sd(medias_amostrais))
lines(x_fit, y_fit, col = "darkgreen", lwd = 2, lty = 2)

# Adiciona uma legenda para clarificar as linhas
legend("topleft", 
       legend = c("Densidade Estimada", "Curva Normal Teórica"),
       col = c("blue", "darkgreen"),
       lwd = 2, lty = c(1, 2))