R/gera-casos-obitos-idade.R

Defines functions gera_casos_obitos_idade

Documented in gera_casos_obitos_idade

#' @title Gera dados de faixa etaria, obitos e casos segundo a base de primeiros sintomas
#'
#' @description Avalia os dados de primeiros sintomas e gera tres series, serie de obitos por sexo e idade, serie de casos por sexo e idade media movel e serie de obitos por ra e idade, considerando apenas idosos (60 anos ou mais)
#'
#' @param dados um data.frame com dados de primeiros sintomas da SSP
#'
#' @return uma lista com tres data.tables com os dados as serie de obitos por sexo e idade, serie de casos por sexo e idade media movel e serie de obitos por ra e idade, considerando apenas idosos (60 anos ou mais)
#'
#' @import data.table

gera_casos_obitos_idade = function(dados){
  # Conformando ao tipo data.table
  dados = transforma_dt(dados)

  # Corrige formato da variavel idade
  dados[, idade := as.integer(idade)]
  dados = dados[idade %in% 0:120 & sexo %in% c("Masculino", "Feminino"),]

  # Gera serie de obitos por sexo e idade
  obitos = dados[!is.na(data_obito), .(mortes = .N), by = .(idade, sexo)]
  obitos = dcast(obitos, formula = idade ~ sexo, fill = 0, value.var = "mortes")
  setorder(obitos, idade)

  # Gera serie de casos por sexo e idade
  casos = dados[, .(casos = .N), by = .(idade, sexo)]
  casos = dcast(casos, formula = idade ~ sexo, fill = 0, value.var = "casos")
  setorder(casos, idade)

  # Gera serie de obitos por ra e idade, considerando apenas idosos
  obitos_idosos = dados[!is.na(data_obito) & idade >= 60, .(mortes = .N), by = .(idade, ra)]
  obitos_idosos = dcast(obitos_idosos, formula = idade ~ ra, fill = 0, value.var = "mortes")
  setorder(obitos_idosos, idade)

  # Definindo resultados
  resultados = list(obitos = obitos, casos = casos, obitos_idosos = obitos_idosos)

  # Retornando resultados
  return(resultados)
}
mellohenrique/codeplan.boletim2 documentation built on March 20, 2022, 3:15 a.m.