1 Introdução

O pacote RHCgen surge como uma ferramenta essencial para a automação e padronização do processamento de dados do Registro Hospitalar de Câncer (RHC) no Brasil, atendendo à crescente demanda por pesquisas oncológicas robustas e reprodutíveis. Atualmente, o Brasil possui bases de dados relevantes como o RHC e o Registros de Câncer de Base Populacional (RCBP), ambos geridos pelo Instituto Nacional do Câncer (INCA). No entanto, a manipulação dos dados do RHC enfrenta desafios devido à complexidade e heterogeneidade das informações. Embora a ferramenta TabWin, desenvolvida pelo DATASUS, seja amplamente utilizada para tabulação desses dados, ela é limitada ao sistema operacional Windows e oferece capacidades analíticas restritas, exigindo que pesquisadores exportem dados para pacotes estatísticos mais robustos.

A linguagem R, amplamente utilizada para análise estatística, oferece uma oportunidade significativa de melhoria ao permitir o processamento eficiente e a manipulação de grandes volumes de dados heterogêneos, típicos em estudos de epidemiologia. Ferramentas como o pacote Microdatasus já facilitam o acesso a dados de saúde pública no Brasil, mas até o momento, não existia um pacote específico para o RHC. O desenvolvimento do RHCgen busca preencher essa lacuna, permitindo que pesquisadores automatizem e padronizem o processamento de dados clínicos e de tratamento de pacientes oncológicos atendidos pelo Sistema Único de Saúde (SUS), tornando o processo de análise de dados mais eficiente, reprodutível e livre de erros.

Com a criação do RHCgen, espera-se uma melhoria significativa na agilidade e precisão da análise dos dados do RHC, promovendo maior reprodutibilidade nas pesquisas e a geração de evidências científicas robustas na área de oncologia. A iniciativa reduz a dependência de ferramentas limitadas e processos manuais, além de proporcionar uma integração mais fluida dos dados em projetos de pesquisa, otimizando o tempo de análise e garantindo resultados mais confiáveis. Esse pacote em R visa facilitar o acesso aberto aos dados e apoiar o desenvolvimento de pesquisas oncológicas no Brasil.

1.1 Pre-requisitos:

Para utilizar o pacote, é necessário primeiro baixar os arquivos no formato DBF com os dados de câncer do IntegradorRHC do INCA. O processo pode ser realizado em alguns passos. Primeiro, o usuário deve acessar o site do IntegradorRHC (https://irhc.inca.gov.br/RHCNet/visualizaTabNetExterno.action). No menu “Tabulador Hospitalar”, acessar o botão de “Download”. Uma nova janela será aberta automaticamente, na qual o usuário deve selecionar o botão “Base de dados de todos os estados” e clicar em “Enviar”. Na próxima janela, deve selecionar “Modelo do arquivo de definição para tabwin* (def)”, escolher todos os anos que deseja incluir no banco de dados e clicar em “Enviar”. Assim, o download dos arquivos será iniciado, com a mensagem: “Seu Download está sendo gerado! Por favor, aguarde…”. Após o download, os arquivos serão salvos na pasta de downloads do computador.

Esses arquivos chegam compactados; o usuário deve descompactar e transferir todos os arquivos com extensão “.dbf” (ex.: rhc18.dbf, rhc19.dbf, rhc20.dbf) para o diretório de trabalho em uso no RStudio. Isso é necessário para que o pacote RHCgen possa ler os arquivos corretamente.

1.2 Instalação

O pacote está disponível no GitHub e pode ser instalado com o seguinte comando:

# Obs.: É necessário ter instalado previamente o pacote "remotes".

# Instalando o "remotes": 
install.packages("remotes")


# Instalar o RHCgen via GitHub

remotes::install_github("andersonlineu/RHCgen")

Para garantir o funcionamento correto, também é necessário ter o pacote foreign instalado para a leitura de arquivos DBF. O RHCgen irá verificar se esse pacote está instalado e, se necessário, fará a instalação automaticamente.

1.3 Carregar o Pacote

Depois de instalar o RHCgen, você pode carregá-lo no R com o seguinte comando:

library(RHCgen)

Use o Help para encontrar outras explicações.


2 Automatizar o Processamento de Dados

A função construir_banco() facilita o processo de manipulação dos dados do RHC ao integrar várias operações em um único comando. Essa função realiza a leitura, combinação, renomeação de colunas, modificação de tipos de variáveis, recodificação, e ajustes de códigos CID-O, CNES e outros. Ela também realiza análises de completude e verifica inconsistências nos dados.

A função construir_banco foi desenvolvida para automatizar a preparação de dados, consolidando diversas etapas essenciais em um único fluxo de execução. Durante sua operação, essa função chama internamente todas as subfunções necessárias para realizar transformações e verificações detalhadas. Essas operações incluem a leitura e fusão de arquivos DBF, padronização de nomes de colunas, conversão de tipos de variáveis, recodificação de variáveis categóricas, mapeamento de siglas de estados, ajustes de códigos CID-O, CNES, tipo histológico, clínicas de atendimento e tratamento, estadiamento clínico, além de realizar uma análise da completude e consistência dos dados.

Caso queira, o usuário tem a flexibilidade de executar cada função subjacente de forma isolada, proporcionando controle granular sobre o pipeline de manipulação dos dados, conforme a necessidade. Alternativamente, a função construir_banco() oferece uma solução integrada, consolidando todas essas operações em um único comando, automatizando o processamento de forma prática e eficiente. Assim, a função se ajusta tanto à conveniência de um processo automatizado quanto à exigência de maior controle nas etapas individuais, adaptando-se a diferentes necessidades analíticas.

A função presume que os arquivos no diretório especificado estão presentes e devidamente nomeados. Eventuais problemas, como ausência ou inconsistência de arquivos, são tratados implicitamente, mas a operação correta depende da correta organização do diretório.

2.1 Exemplo de Uso

# Automatizar a preparação do banco de dados do RHC
banco_RHC <- construir_banco()

O processo inicia listando todos os arquivos com extensão “.dbf” no diretório de trabalho, cujos nomes começam com “rhc”. Após essa etapa, o script verifica se todas as colunas desses arquivos possuem a mesma estrutura. Se houver consistência, os arquivos são combinados em um único dataframe. Caso contrário, o usuário será notificado sobre o erro que impediu o processamento, seja pela falta de arquivos ou por inconsistências entre os dados.

Essa função é particularmente útil para simplificar a preparação dos dados e garantir consistência em todo o processo de manipulação.

3 Filtrar os Dados com Base em Vários Critérios

3.1 Descrição

A função filtrar_banco() filtra um dataframe com base em critérios específicos fornecidos pelo usuário, como códigos CID-3, CID-4, anos de triagem, anos de diagnóstico, anos da primeira consulta, idade, tipo de caso, sexo, estado de residência, unidade hospitalar, primeiro tratamento hospitalar, ano de início do tratamento, origem do encaminhamento e anos do banco de dados.

3.2 Sintaxe

filtrar_banco(
  dados = Seu_data_frame_aqui,
  cid3digitos = NULL,
  cid4digitos = NULL,
  ano_inicio_triagem = NULL,
  ano_fim_triagem = NULL,
  ano_inicio_diagnostico = NULL,
  ano_fim_diagnostico = NULL,
  ano_inicio_primeira_consulta = NULL,
  ano_fim_primeira_consulta = NULL,
  idade_inicio = NULL,
  idade_fim = NULL,
  tipo_de_caso = NULL,
  sexo = NULL,
  estado_residencia = NULL,
  uf_unidade_hospital = NULL,
  primeiro_tratamento_hospital = NULL,
  ano_inicio_tratamento = NULL,
  ano_fim_tratamento = NULL,
  origem_do_encaminhamento = NULL,
  ano_do_banco_inicio = NULL,
  ano_do_banco_fim = NULL
)

3.2.1 Argumentos

  • dados: Um dataframe que contém as variáveis a serem filtradas.
  • cid3digitos: Um vetor de códigos CID-3 para filtrar a coluna Localizacao_Primaria_3D. Padrão é NULL.
  • cid4digitos: Um vetor de códigos CID-4 para filtrar a coluna Localizacao_Primaria_4D. Padrão é NULL.
  • ano_inicio_triagem: Ano inicial para filtrar a coluna Ano_Triagem. Padrão é NULL.
  • ano_fim_triagem: Ano final para filtrar a coluna Ano_Triagem. Padrão é NULL.
  • ano_inicio_diagnostico: Ano inicial para filtrar a coluna Ano_Primeiro_Diagnostico. Padrão é NULL.
  • ano_fim_diagnostico: Ano final para filtrar a coluna Ano_Primeiro_Diagnostico. Padrão é NULL.
  • idade_inicio: Idade inicial para filtrar a coluna Idade. Padrão é NULL.
  • idade_fim: Idade final para filtrar a coluna Idade. Padrão é NULL.
  • tipo_de_caso: Filtro para a coluna Tipo_de_Caso (valores possíveis: “Analítico”, “Não Analítico”). Padrão é NULL.
  • sexo: Filtro para a coluna Sexo (valores possíveis: “Masculino”, “Feminino”). Padrão é NULL.
  • estado_residencia: Filtro para a coluna Estado_Residencia com siglas dos estados. Padrão é NULL.
  • uf_unidade_hospital: Filtro para a coluna UF_Unidade_Hospital com siglas dos estados. Padrão é NULL.
  • primeiro_tratamento_hospital: Filtro para a coluna Primeiro_Tratamento_Hospital. Padrão é NULL.
  • ano_inicio_tratamento: Ano inicial para filtrar a coluna Ano_Inicio_Tratamento. Padrão é NULL.
  • ano_fim_tratamento: Ano final para filtrar a coluna Ano_Inicio_Tratamento. Padrão é NULL.
  • origem_do_encaminhamento: Filtro para a coluna Origem_do_Encaminhamento. Padrão é NULL.
  • ano_do_banco_inicio: Ano inicial para filtrar a coluna Ano_do_Banco. Padrão é NULL.
  • ano_do_banco_fim: Ano final para filtrar a coluna Ano_do_Banco. Padrão é NULL.

3.2.2 Valor Retornado

Retorna o dataframe filtrado com base nos critérios fornecidos.

3.2.3 Exemplo de Uso

DADOS_FILTRADOS <- filtrar_banco(
  dados = dados_RHC_combinados,
  cid3digitos = "C44", 
  ano_inicio_triagem = 2018, 
  ano_fim_triagem = 2020,
  idade_inicio = 20, 
  idade_fim = 80,
  tipo_de_caso = "Analítico", 
  estado_residencia = c("RJ", "MG")
)

Neste exemplo, o dataframe será filtrado para incluir apenas os registros com o código CID-3 “C44”, triagem realizada entre 2018 e 2020, pacientes com idades entre 20 e 80 anos, com casos analíticos e residentes nos estados do Rio de Janeiro e Minas Gerais.

4 Dicionário de Variáveis - Registro Hospitalar de Câncer

Código RHC Novo nome das variáveis Descrição Categorias
TPCASO Tipo_de_Caso Tipo de caso (analítico ou não analítico). 1. Sim (Analítico); 2. Não (Não analítico)
SEXO Sexo Sexo do paciente. 1. Masculino; 2. Feminino
IDADE Idade Idade do paciente. Idade, em anos; valor igual a zero para crianças menores de 1 ano
LOCALNAS Local_Nascimento Local de nascimento do paciente. Sigla da UF de nascimento
RACACOR Raca_Cor Raça ou cor do paciente. 1. Branca; 2. Preta; 3. Amarela; 4. Parda; 5. Indígena; 9. Sem informação
INSTRUC Escolaridade Nível de educação do paciente. 1. Nenhuma; 2. Fundamental incompleto; 3. Fundamental completo; 4. Nível médio; 5. Nível superior incompleto; 9. Sem informação
CLIATEN Clinica_Atendimento Clínica onde o paciente foi atendido. Codificação segundo Tabela de Clínicas do SisRHC
Nome_Clinica_Atendimento Nome da clínica onde o paciente foi atendido.
CLITRAT Clinica_Tratamento Clínica onde o paciente foi tratado. Codificação segundo Tabela de Clínicas do SisRHC
Nome_Clinica_Tratamento Nome da clínica onde o paciente foi tratado.
HISTFAMC Historico_Familiar_Cancer Histórico de câncer na família. 1. Sim; 2. Não; 9. Sem informação
ALCOOLIS Consumo_Alcool Informação sobre o consumo de álcool pelo paciente. 1. Nunca; 2. Ex-consumidor; 3. Sim; 4. Não avaliado; 8. Não se aplica; 9. Sem informação
TABAGISM Tabagismo Informação sobre o tabagismo do paciente. 1. Nunca; 2. Ex-consumidor; 3. Sim; 4. Não avaliado; 8. Não se aplica; 9. Sem informação
ESTADRES Estado_Residencia Estado de residência do paciente. Sigla da UF de procedência
Nome_Estado_Residencia Nome do estado de residência do paciente.
PROCEDEN Codigo_Municipio_Residencia Código do município de residência do paciente. Tabela de municípios do IBGE
Nome_Municipio_Residencia Nome do município de residência do paciente.
ANOPRIDI Ano_Primeiro_Diagnostico Ano do primeiro diagnóstico do paciente. aaaa
ORIENC Origem_do_Encaminhamento Origem do encaminhamento para tratamento ou diagnóstico. 1. SUS; 2. Não SUS; 3. Veio por conta própria; 8. Não se aplica; 9. Sem informação
EXDIAG Exames_Relevantes_para_Diagnostico Exames relevantes para o diagnóstico do paciente. 1. Exame clínico e patologia clínica; 2. Exames por imagem; 3. Endoscopia e cirurgia exploradora; 4. Anatomia patológica; 9. Sem informação
ESTCONJ Estado_conjugal Estado conjugal do paciente. 1. Solteiro; 2. Casado; 3. Viúvo; 4. Separado judicialmente; 5. União consensual; 9. Sem informação
ANTRI Ano_Triagem Ano em que a triagem foi realizada. dd/mm/aaaa
DTPRICON Ano_Primeira_Consulta Ano da primeira consulta do paciente. aaaa
DIAGANT Diagnosticos_e_Tratamentos_Anterior Diagnósticos e tratamentos anteriores. 1. Sem diag./Sem trat.; 2. Com diag./Sem trat.; 3. Com diag./Com trat.; 4. Outros; 9. Sem informação
BASMAIMP Base_Mais_Importante_Diagnostico Base de maior importância para o diagnóstico. 1. Clínica; 2. Exame por imagem; 3. Marcadores tumorais; 4. Histologia do tumor primário; 9. Sem informação
LOCTUDET Localizacao_Primaria_3D Localização primária do tumor em 3D. Código da CID-O, 3 dígitos
CID3d Classificação Internacional de Doenças (CID) para a localização primária em 3D. Código da CID-O, 4 dígitos
Classificacao_CID_O Classificação do câncer segundo a CID-O (Classificação Internacional de Doenças Oncológicas).
LOCTUPRI Localizacao_Primaria_4D Localização primária do tumor em 4D.
CID4d Classificação Internacional de Doenças (CID) para a localização primária em 4D.
TIPOHIST Tipo_Histologico Tipo histológico do tumor. Codificação da morfologia do tumor pela CID-O
Tipo_Histologico_Completo Descrição completa do tipo histológico do tumor.
LATERALI Lateralidade Lateralidade do tumor. 1. Direita; 2. Esquerda; 3. Bilateral; 8. Não se aplica; 9. Sem informação
LOCTUPRO Local_Provavel_Tumor Local provável do tumor. CID-O, 4 dígitos
MAISUMTU Mais_de_Um_Tumor Indicação de se há mais de um tumor. 1. Não; 2. Sim; 3. Duvidoso
TNM Classificacao_TNM Classificação TNM do tumor. Codificação do estádio clínico segundo classificação TNM
ESTADIAM Estadiamento_Clinico Estadiamento clínico do câncer. Codificação do grupamento do estádio clínico segundo classificação TNM
Nome_Estadiamento_Clinico Nome do estadiamento clínico do câncer.
OUTROESTA Outro_Estadiamento_Clinico Outras informações de estadiamento clínico. Codificação do grupamento do estádio clínico segundo outras classificações que não a TNM
PTNM TNM_Patologico TNM patológico.
RZNTR Razao_Nao_Tratamento Razão pela qual o tratamento não foi realizado. 1. Recusa do tratamento; 2. Tratamento realizado fora; 3. Doença avançada; 4. Outras razões; 9. Sem informação
DTINITRT Ano_Inicio_Tratamento Ano de início do tratamento. aaaa
PRITRATH Primeiro_Tratamento_Hospital Primeiro tratamento realizado no hospital. 1. Nenhum; 2. Cirurgia; 3. Radioterapia; 4. Quimioterapia; 5. Hormonioterapia; 9. Sem informação
ESTDFIMT Estado_Doenca_Final_Tratamento Estado final após o tratamento. 1. Sem evidência da doença; 2. Remissão parcial; 3. Doença estável; 4. Doença em progressão; 9. Sem informação
CNES CNES_Hospital Código CNES do hospital. Codificação segundo tabela do Cadastro Nacional de Estabelecimentos de Saúde
Estabelecimento_Hospitalar Estabelecimento hospitalar onde o paciente foi tratado.
UFUH UF_Unidade_Hospital Unidade federativa do hospital. Sigla da Unidade da Federação da unidade hospitalar (IBGE)
Nome_Estado_Hospital Nome do estado onde o hospital está localizado.
MUUH Municipio_Unidade_Hospital Município onde o hospital está localizado. Tabela de municípios do IBGE
Nome_Municipio_Hospital Nome do município onde o hospital está localizado.
OCUPACAO Ocupacao_Paciente Ocupação do paciente. Codificação pela Tabela da Código Brasileiro de Ocupações
DTDIAGNO Data_Diagnostico Data do diagnóstico. dd/mm/aaaa
DTTRIAGE Data_Triagem Data da triagem. dd/mm/aaaa
DATAPRICON Data_Primeira_Consulta Data da primeira consulta. dd/mm/aaaa
DATAINITRT Data_Inicio_Primeiro_Tratamento Data de início do primeiro tratamento. dd/mm/aaaa
DATAOBITO Data_Obito Data de óbito do paciente. dd/mm/aaaa
VALOR_TOT Valor_Total Valor total associado ao tratamento.
BASDIAGSP Base_Mais_Importante_ Diagnostico_Sem_Patologicas Base mais importante para o diagnóstico - Sem Patológicas. 1. Exame clínico; 2. Recursos auxiliares não microscópicos; 3. Confirmação microscópica; 9. Sem informação
ESTADIAG Estadiamento_Clínico_ TNM_grupo_1985_1999 Estadiamento clínico TNM grupo de 1985 a 1999. Codificação do grupamento do estádio clínico segundo classificação TNM
Ano_do_Banco Ano em que os dados foram registrados no banco de dados. aaaa