Modelo simples de script de análise descritiva dos casos de esporotricose animal, com base de dados fíctícia com fins de demonstração para seleção de pós doutorado no projeto “Estratégia Saúde da Família na Atenção Primária à Saúde (APS) no SUS”.
summary(cars)
## speed dist
## Min. : 4.0 Min. : 2.00
## 1st Qu.:12.0 1st Qu.: 26.00
## Median :15.0 Median : 36.00
## Mean :15.4 Mean : 42.98
## 3rd Qu.:19.0 3rd Qu.: 56.00
## Max. :25.0 Max. :120.00
library(readxl)
BANCO_REDCAP_testes_29_04_LIMPO <- read_excel("C:/Users/DEMSP/Desktop/BANCO_REDCAP_testes_29_04_LIMPO.xlsx")
dados<-read_excel("C:/Users/DEMSP/Desktop/BANCO_REDCAP_testes_29_04_LIMPO.xlsx")
View(dados)
##
## Anexando pacote: 'dplyr'
## Os seguintes objetos são mascarados por 'package:stats':
##
## filter, lag
## Os seguintes objetos são mascarados por 'package:base':
##
## intersect, setdiff, setequal, union
#Estatísticas numéricas
num_vars <- dados %>% select(where(is.numeric))
resumo_num <- num_vars %>%
summarise(across(everything(),
list(
n = ~sum(!is.na(.)),
media = ~mean(., na.rm = TRUE),
mediana = ~median(., na.rm = TRUE),
minimo = ~min(., na.rm = TRUE),
maximo = ~max(., na.rm = TRUE),
dp = ~sd(., na.rm = TRUE)
),
.names = "{.col}_{.fn}"))
#Frequências de variáveis categóricas
# Transformar em factor
dados <- dados %>% mutate(across(c(ESPECIE, SEXO, EVOLUÇÃO), as.factor))
# Frequências
table_especie <- dados %>% count(ESPECIE) %>% mutate(prop = round(100*n/sum(n),1)) %>% arrange(desc(n))
table_sexo <- dados %>% count(SEXO) %>% mutate(prop = round(100*n/sum(n),1)) %>% arrange(desc(n))
table_evolucao <- dados %>% count(EVOLUÇÃO) %>% mutate(prop = round(100*n/sum(n),1)) %>% arrange(desc(n))
#Completude do banco
completude <- dados %>%
summarise(across(everything(), ~round(sum(is.na(.))/n()*100, 2))) %>%
pivot_longer(everything(), names_to = "Variável", values_to = "Percentual_Nulos")
#Gráficos
# Histograma de idade
graf_idade <- ggplot(dados, aes(x = IDADE)) +
geom_histogram(binwidth = 1, fill = "steelblue", color = "white") +
labs(title = "Distribuição de Idade", x = "Idade (anos)", y = "Frequência") +
theme_minimal()
# Barras categóricas
graf_especie <- ggplot(table_especie, aes(x = reorder(ESPECIE, -n), y = n, fill = ESPECIE)) +
geom_bar(stat="identity") + labs(title="Distribuição por Espécie", x="Espécie", y="N") +
theme_minimal() + theme(legend.position="none")
graf_sexo <- ggplot(table_sexo, aes(x = reorder(SEXO, -n), y = n, fill = SEXO)) +
geom_bar(stat="identity") + labs(title="Distribuição por Sexo", x="Sexo", y="N") +
theme_minimal() + theme(legend.position="none")
graf_evolucao <- ggplot(table_evolucao, aes(x = reorder(EVOLUÇÃO, -n), y = n, fill = EVOLUÇÃO)) +
geom_bar(stat="identity") + labs(title="Distribuição por Evolução", x="Evolução", y="N") +
theme_minimal() + theme(legend.position="none")