csapAIH | R Documentation |
Classifica códigos da 10ª Revisão da Classificação Internacional de Doenças (CID-10) segundo a Lista Brasileira de Internação por Condições Sensíveis à Atenção Primária e oferece outras funcionalidades, especialmente para o manejo dos "arquivos da AIH" (RD??????.DBC; BD-SIH/SUS).
csapAIH(
x,
lista = "MS",
grupos = TRUE,
sihsus = TRUE,
procobst.rm = TRUE,
parto.rm = TRUE,
longa.rm = TRUE,
cep = TRUE,
cnes = TRUE,
arquivo = TRUE,
sep,
cid = NULL,
...
)
x |
alvo da função: um arquivo, banco de dados ou vetor com códigos da CID-10 (ver |
lista |
Lista de causas a ser considerada (v. detalhes); pode ser |
grupos |
argumento lógico, obrigatório; |
sihsus |
argumento lógico, obrigatório se
|
procobst.rm |
argumento lógico, obrigatório se |
parto.rm |
argumento lógico, obrigatório se |
longa.rm |
argumento lógico; |
cep |
argumento lógico, obrigatório se |
cnes |
argumento lógico, obrigatório se |
arquivo |
argumento lógico, obrigatório; |
sep |
usado para a leitura de arquivos da AIH em formato CSV; pode ser ";" para arquivos separados por ponto-e-vírgula e com vírgula como separador decimal, ou "," para arquivos separados por vírgula e com ponto como separador decimal; |
cid |
identifica a varivável contendo os códigos da CID-10, em bancos de dados sem a estrutura do SIHSUS; argumento obrigatório nesses casos; |
... |
permite a inclusão de argumentos das funções |
x pode ser:
um arquivo de dados armazenado num diretório;
um banco de dados, ou um vetor da classe factor
presente como objeto no espaço de trabalho do R, em que uma das variáveis, ou o vetor, contenha códigos da CID-10.
Se for um arquivo, o nome deve ser escrito entre aspas e com a extensão do arquivo (DBC, DBF ou CSV, em minúsculas ou maiúsculas). Se não estiver no diretório de trabalho ativo, seu nome deve ser precedido pelo caminho (path) até o diretório de armazenamento. Se estiver em outro formato, podem-se usar os argumentos da função read.table
para leitura dos dados.
Se a função for dirigida a um objeto no espaço de trabalho da classe factor
ou data.frame
, estes também são reconhecidos e o comando é o mesmo: csapAIH(x)
. Se o objeto for de outra classe, como character
ou matrix
, é necessário definir o argumento "arquivo" como FALSE: csapAIH(x, arquivo = FALSE)
, ou, para vetores isolados, defini-lo como fator: csapAIH(as.factor(x))
.
lista
A Lista Brasileira de ICSAP publicada pelo Ministério da Saúde (Brasil, 2008) se diferencia da lista publicada pelxs construtorxs da lista (Alfradique et al., 2009), em um único aspecto: a Portaria Ministerial uniu os dois primeiros grupos de causa da lista publicada por Alfradique et al. – doenças evitáveis por vacinação e doenças evitáveis por outros meios (sífilis, tuberculose e febre reumática). Não há diferença no total de diagnósticos considerados, ou na distribuição dos diagnósticos entre os demais grupos.
procbst.rm
TRUE (padrão) exclui as internações por procedimentos relacionados ao parto ou abortamento. São excluídas as internações pelos seguintes procedimentos obstétricos, independente do diagnóstico principal de internação (variável 'DIAGPRINC'):
0310010012 ASSISTENCIA AO PARTO S/ DISTOCIA
0310010020 ATENDIMENTO AO RECÉM-NASCIDO EM SALA DE PARTO
0310010039 PARTO NORMAL
0310010047 PARTO NORMAL EM GESTAÇÃO DE ALTO RISCO
0411010018 DESCOLAMENTO MANUAL DE PLACENTA
0411010026 PARTO CESARIANO EM GESTAÇÃO ALTO RISCO
0411010034 PARTO CESARIANO
0411010042 PARTO CESARIANO C/ LAQUEADURA TUBÁRIA
0411020013 CURETAGEM PÓS-ABORTAMENTO / PUERPERAL
0411020021 EMBRIOTOMIA
parto.rm
TRUE (padrão) exclui as internações por parto pelo campo diagnóstico, independente do procedimento. São excluídas as internações com os seguintes diagnósticos (CID-10):
O80 Parto único espontâneo
O81 Parto único por fórceps ou vácuo-extrator
O82 Parto único por cesariana
O83 Outros tipos de parto único assistido
O84 Parto múltiplo
É retornada uma mensagem informando o número de registros lidos, o número e proporção de registros excluídos e o total de registros importados.
sihsus
A própria função define este argumento como FALSE
quando "x" (o alvo da função) é um fator. Quando o alvo é um objeto da clase data frame
sem a estrutura dos arquivos da AIH, a variável com os códigos da CID-10 deve ser trabalhada como um factor
.
A função tem diferentes possibilidades de retorno, segundo a estrutura dos dados lidos e as opções de leitura:
Se for um arquivo ou data frame
com a estrutura dos arquivos da AIH:
um data frame
com as variáveis nº da AIH, município de residência, município de internação, sexo, data de nascimento, idade em anos completos, faixa etária detalhada, faixa etária quinquenal, data da internação, data da saída, procedimento realizado, cid, CSAP, grupo csap, CEP e CNES do hospital
Nesse caso, o banco resultante tem um argumento "resumo" com o resumo da importação de dados, segundo as opções de seleção
Se os argumentos grupo
, cep
ou cnes
forem definidos como FALSE
, o banco é construído sem essas variáveis
Se um fator ou data frame sem a estrutura dos arquivos da AIH:
Se grupos = TRUE
: um banco de dados com as variáveis csap
(sim ou não), grupo
(subgrupo CSAP) e cid
(código da CID-10);
Se factor
e grupos = FALSE
: um fator com as observações classificadas como CSAP ou não-CSAP.
A função read.dbf
, do pacote foreign
, não lê arquivos em formato DBF em que uma das variáveis tenha todos os valores ausentes ('missings'); essas variáveis devem ser excluídas antes da leitura do arquivo pela função csapAIH
ou mesmo pela função read.dbf
.
Alfradique ME et al. Internações por condições sensíveis à atenção primária: a construção da lista brasileira como ferramenta para medir o desempenho do sistema de saúde (Projeto ICSAP - Brasil). Cadernos de Saúde Pública. 2009; 25(6): 1337-1349. https://doi.org/10.1590/S0102-311X2009000600016.
Brasil. Ministério da Saúde. Secretaria de Atenção à Saúde. Portaria No 221, de 17 de abril de 2008. http://bvsms.saude.gov.br/bvs/saudelegis/sas/2008/prt0221_17_04_2008.html
__________. Departamento de Regulação, Avaliação e Controle. Coordenação Geral de Sistemas de Informação - 2010. Manual técnico operacional do Sistema de Informação Hospitalar: orientações técnicas. Versão 01.2013. Ministério da Saúde: Brasília, 2013.
read.table
, read.csv
, read.dbc
,
descreveCSAP
, desenhaCSAP
, nomesgruposCSAP
## Uma lista de códigos da CID-10:
##---------------------------------
cids <- c("I200", "K929", "T16", "I509", "I10", "I509", "S068")
#
# Se o vetor for da classe 'character', deve-se transformá-lo em fator ou
# mudar o argumento 'arquivo' para 'FALSE':
# teste1 <- csapAIH(cids) # Erro
teste1 <- csapAIH(factor(cids)) ; class(teste1) ; teste1
teste1 <- csapAIH(cids, arquivo=FALSE) ; class(teste1) ; teste1
teste2 <- csapAIH(cids, arquivo=FALSE, grupo=FALSE) ; class(teste2) ; teste2
teste2 <- csapAIH(factor(cids), grupo=FALSE) ; class(teste2) ; teste2
#
## Um 'arquivo da AIH' armazenado no diretório de trabalho:
##---------------------------------------------------------
## Not run:
teste3.dbf <- csapAIH("RDRS1201.dbf")
str(teste3.dbf)
teste4.dbc <- csapAIH("data-raw/RDRS1801.dbc")
str(teste4.dbc)
## End(Not run)
## Um 'data.frame' com a estrutura dos 'arquivos da AIH':
##-------------------------------------------------------
data("aih500")
str(aih500)
teste5 <- csapAIH(aih500)
attributes(teste5)$resumo
str(teste5)
levels(teste5$grupo)
# Sem excluir registros
teste6 <- csapAIH(aih500, procobst.rm = FALSE, parto.rm = FALSE, longa.rm = FALSE)
str(teste6)
attributes(teste6)$resumo
# Com a lista de 20 grupos de causa (Alfradique et al.)
teste7 <- csapAIH(aih500, lista = "Alfradique")
str(teste7)
levels(teste7$grupo)
## Uma base de dados com a estrutura dos "arquivos da AIH"
## mas sem as variáveis CEP ou CNES:
##--------------------------------------------------------
aih <- subset(aih500, select = -c(CEP, CNES))
teste8 <- csapAIH(aih, cep = FALSE, cnes = FALSE)
str(teste8)
## Uma base de dados sem a estrutura dos arquivos RD*.dbc:
##--------------------------------------------------------
teste9 <- csapAIH(eeh20, sihsus = FALSE, cid = cau_cie10)
str(teste9)
teste10 <- csapAIH(eeh20, sihsus = FALSE, cid = cau_cie10, parto.rm = FALSE)
str(teste10)
## Uma base de dados com a estrutura dos "arquivos da AIH" mantendo
## todas suas variáveis
##-----------------------------------------------------------------
## Trate como se não fosse um arquivo da AIH e apenas acrescente
## a classificação ao banco:
teste11 <- csapAIH(aih500, sihsus = FALSE, cid = DIAG_PRINC)
str(teste11)
## Acrescentar variáveis da AIH ao banco com as CSAP
##---------------------------------------------------------
## É necessário unir o banco da AIH com as variáveis de interesse
## ao banco resultante da função 'csapAIH':
vars <- c('N_AIH', 'RACA_COR', 'INSTRU')
teste12 <- csapAIH(aih500)
teste12 <- merge(teste12, aih500[, vars], by.x = "n.aih", by.y = "N_AIH")
names(teste12)
## Ou, usando o encadeamento ("piping") de funções,
teste13 <- csapAIH(aih500) |>
merge(aih100[, vars], by.x = "n.aih", by.y = "N_AIH")
names(teste13)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.