<jupyter_start><jupyter_text>Tratamento dos dados relacionados aos casos e óbitos de Hepatite no brasil por região  Importações dos pacotes<jupyter_code>import pandas as pd
from funcoes import limpa_casos_regiao, limpa_obitos<jupyter_output><empty_output><jupyter_text>Bases de dados utilizadas [casos_hepA_por_regiao.csv](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/casos_hepA_por_regiao.csv) : arquivo csv com os dados de casos e óbitos de Hepatite A por região entre 2001 e 2006[casos_hepB_por_regiao.csv](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/casos_hepB_por_regiao.csv) : arquivo csv com os dados de casos e óbitos de Hepatite B por região entre 2001 e 2006[casos_hepC_por_regiao.csv](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/casos_hepC_por_regiao.csv) : arquivo csv com os dados de casos e óbitos de Hepatite C por região entre 2001 e 2006[MonitoramentoHepatites-Norte.xls](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/MonitoramentoHepatites-Norte.xls) : arquivo xls com várias tabelas relacionadas aos casos e óbitos de Hepatites da região Norte entre 2007 e 2019[MonitoramentoHepatites-Nordeste.xls](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/MonitoramentoHepatites-Nordeste.xls) : arquivo xls com várias tabelas relacionadas aos casos e óbitos de Hepatites da região Nordeste entre 2007 e 2019[MonitoramentoHepatites-Sul.xls](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/MonitoramentoHepatites-Sul.xls) : arquivo xls com várias tabelas relacionadas aos casos e óbitos de Hepatites da região Sul entre 2007 e 2019[MonitoramentoHepatites-Sudeste.xls](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/MonitoramentoHepatites-Sudeste.xls) : arquivo xls com várias tabelas relacionadas aos casos e óbitos de Hepatites da região Sudeste entre 2007 e 2019[MonitoramentoHepatites-Centro-Oeste.xls](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/MonitoramentoHepatites-Centro-Oeste.xls) : arquivo xls com várias tabelas relacionadas aos casos e óbitos de Hepatites da região Centro-Oeste entre 2007 e 2019[serie_2001_2020_TCU_populacao.xls](https://github.com/PedroHCAlmeida/projeto_um_mal_silencioso/blob/main/dados_brutos/serie_2001_2020_TCU_populacao.xls) : arquivo xls com dados com dados da estimativa da população brasileira feita pelo IBGE entre 2001 e 2020  Leitura dos dados<jupyter_code>#Leitura dos dados relacionados aos casos por região de cada Hepatatite entre 2001 e 2006
casos_A = pd.read_csv('../dados_brutos/casos_hepA_por_regiao.csv', encoding='ISO-8859-1', skiprows=4, 
                            skipfooter=13, sep=';', usecols=[0,1,2,3,4,5], engine='python', na_values='-')
casos_B = pd.read_csv('../dados_brutos/casos_hepB_por_regiao.csv', encoding='ISO-8859-1', skiprows=4, 
                            skipfooter=13, sep=';', usecols=[0,1,2,3,4,5], engine='python', na_values='-')
casos_C = pd.read_csv('../dados_brutos/casos_hepC_por_regiao.csv', encoding='ISO-8859-1', skiprows=4, 
                            skipfooter=13, sep=';', usecols=[0,1,2,3,4,5], engine='python', na_values='-')

#Leitura dos dados relacionados aos casos por Hepatite de cada região entre 2007 e 2019
casos_norte_recentes = pd.read_html('../dados_brutos/MonitoramentoHepatites-Norte.xls', thousands='.', na_values='-')
casos_nordeste_recentes = pd.read_html('../dados_brutos/MonitoramentoHepatites-Nordeste.xls', thousands='.', na_values='-')
casos_sudeste_recentes = pd.read_html('../dados_brutos/MonitoramentoHepatites-Sul.xls', thousands='.', na_values='-')
casos_sul_recentes = pd.read_html('../dados_brutos/MonitoramentoHepatites-Sudeste.xls', thousands='.', na_values='-')
casos_centro_recentes = pd.read_html('../dados_brutos/MonitoramentoHepatites-Centro-Oeste.xls', thousands='.', na_values='-')

#Leitura dos dados de estimativa populacional por estado e por ano e limitando entre 2001 e 2019 
pop_2001_2019 = pd.read_excel('../dados_brutos/serie_2001_2020_TCU_populacao.xls', skiprows=4,
                              skipfooter=10, usecols=range(0,20))<jupyter_output><empty_output><jupyter_text>Funções<jupyter_code>help(limpa_casos_regiao)
help(limpa_obitos)<jupyter_output>Help on function limpa_obitos in module funcoes:

limpa_obitos(dados: pandas.core.frame.DataFrame, nome_valores: str)
    Função que recebe o DataFrame relacionado aos óbitos de cada virus e realiza algumas transformações:
        
        Retira as colunas que agrupam diversos anos, coluna 'Total' e coluna '2000-2006' 
        Retira a palavra 'Hepatite' antes do vírus(A,B,C)
        Renomeia a coluna Óbitos por virus
        Retira os dados relacionados à Hepatite D
        Transforma as colunas relacionadas aos Anos em apenas uma coluna('Ano') e atribui o 'nome_valores' como nome da coluna com os valores numéricos
        Trasnforma o tipo de dados da coluna 'Ano' em inteiro e a coluna com os dados numéricos para float(podem haver valores nulos) a fim de evitar problemas e facilitar a manipulação
    
    Parâmetros:
    
        dados : DataFrame onde estão os dados mais recentes dos óbitos de hepatite, tipo : pd.DataFrame
        hep : o nome que a coluna com os valores numéricos [...]<jupyter_text>Tratando os dados<jupyter_code>#Dividindo as tabelas entre hepatite A, B e C e óbitos por hepatite da região Norte entre 2007 e 2019
casos_norte_recentes_A = casos_norte_recentes[1]
casos_norte_recentes_B = casos_norte_recentes[3]
casos_norte_recentes_C = casos_norte_recentes[5]
obitos_norte = casos_norte_recentes[10]

#Dividindo as tabelas entre hepatite A, B e C e óbitos por hepatite da região Nordeste entre 2007 e 2019
casos_nordeste_recentes_A = casos_nordeste_recentes[1]
casos_nordeste_recentes_B = casos_nordeste_recentes[3]
casos_nordeste_recentes_C = casos_nordeste_recentes[5]
obitos_nordeste = casos_nordeste_recentes[10]

#Dividindo as tabelas entre hepatite A, B e C e óbitos por hepatite da região Sudeste entre 2007 e 2019
casos_sudeste_recentes_A = casos_sudeste_recentes[1]
casos_sudeste_recentes_B = casos_sudeste_recentes[3]
casos_sudeste_recentes_C = casos_sudeste_recentes[5]
obitos_sudeste = casos_sudeste_recentes[10]

#Dividindo as tabelas entre hepatite A, B e C e óbitos por hepatite da região Sul entre 2007 e 2019
casos_sul_recentes_A = casos_sul_recentes[1]
casos_sul_recentes_B = casos_sul_recentes[3]
casos_sul_recentes_C = casos_sul_recentes[5]
obitos_sul = casos_sul_recentes[10]

#Dividindo as tabelas entre hepatite A, B e C e óbitos por hepatite da região Centro-Oeste entre 2007 e 2019
casos_centro_recentes_A = casos_centro_recentes[1]
casos_centro_recentes_B = casos_centro_recentes[3]
casos_centro_recentes_C = casos_centro_recentes[5]
obitos_centro = casos_centro_recentes[10]<jupyter_output><empty_output><jupyter_text>Agora que as tabelas estão divididas devidamente utilizarei a função 'limpa_casos_regiao' que irá realizar todas as transformações necessárias e unir os dados de Hepatite por região<jupyter_code>casos_norte_recentes = limpa_casos_regiao(casos_norte_recentes_A, casos_norte_recentes_B, casos_norte_recentes_C, 'Norte')
casos_nordeste_recentes = limpa_casos_regiao(casos_nordeste_recentes_A, casos_nordeste_recentes_B, casos_nordeste_recentes_C, 'Nordeste')
casos_sudeste_recentes = limpa_casos_regiao(casos_sudeste_recentes_A, casos_sudeste_recentes_B, casos_sudeste_recentes_C, 'Sudeste')
casos_sul_recentes = limpa_casos_regiao(casos_sul_recentes_A, casos_sul_recentes_B, casos_sul_recentes_C, 'Sul')
casos_centro_recentes = limpa_casos_regiao(casos_centro_recentes_A, casos_centro_recentes_B, casos_centro_recentes_C, 'Centro-Oeste')<jupyter_output><empty_output><jupyter_text>Agora que todas as tabelas relacionados os dados mais recentes estão no mesmo formato irei juntar todas em apenas uma tabela<jupyter_code>casos_reg_recentes = pd.merge(casos_norte_recentes, 
                              pd.merge(casos_nordeste_recentes, 
                                                             pd.merge(casos_sudeste_recentes, 
                                                                      pd.merge(casos_sul_recentes,casos_centro_recentes, 
                                                                               on=['Ano', 'virus']),
                                                             on=['Ano', 'virus']),
                                      on=['Ano', 'virus']),
                              on=['Ano', 'virus'])
casos_reg_recentes.head()<jupyter_output><empty_output><jupyter_text>Agora que os dados recentes estão todos tratados vou colocar os dados mais antigos entre 2001 e 2006 no mesmo formato<jupyter_code>#Renomenando as colunas 
casos_A.columns = ['Ano', 'Norte', 'Nordeste', 'Sudeste', 'Sul', 'Centro-Oeste']    
casos_B.columns = ['Ano', 'Norte', 'Nordeste', 'Sudeste', 'Sul', 'Centro-Oeste']    
casos_C.columns = ['Ano', 'Norte', 'Nordeste', 'Sudeste', 'Sul', 'Centro-Oeste']    

#Cirando a coluna 'virus' para indicar o vírus da Hepatite correspondente da tabela
casos_A['virus'] = 'A'
casos_B['virus'] = 'B'
casos_C['virus'] = 'C'

#Juntando todas as tabelas
casos_reg = casos_A.append(casos_B.append(casos_C))

#Ordenando as colunas para mesma ordem dos dados mais recentes
casos_reg = casos_reg[['Ano', 'virus', 'Norte', 'Nordeste', 'Sudeste', 'Sul', 'Centro-Oeste']]

casos_reg.head()
#Juntando os dados mais antigos com mais recentes
casos_reg = casos_reg.append(casos_reg_recentes)

#Transformando as colunas relacionadas às regiões em uma coluna só 'Regiao'
casos_reg = pd.melt(casos_reg , id_vars=['Ano', 'virus'], var_name='Regiao', value_name='Casos')
casos_reg<jupyter_output><empty_output><jupyter_text>Agora irei usar a função 'limpa_obitos' para realizar as transformações nas bases de dados relacionadas aos óbitos por Hepatite de cada região<jupyter_code>obitos_norte = limpa_obitos(obitos_norte, 'Norte')
obitos_nordeste = limpa_obitos(obitos_nordeste, 'Nordeste')
obitos_sudeste = limpa_obitos(obitos_sudeste, 'Sudeste')
obitos_sul = limpa_obitos(obitos_sul, 'Sul')
obitos_centro = limpa_obitos(obitos_centro, 'Centro-Oeste')<jupyter_output><empty_output><jupyter_text>Agora vou juntar os dados relacionados aos óbitos em uma tabela só<jupyter_code>obitos_reg = pd.merge(obitos_norte, 
                      pd.merge(obitos_nordeste, 
                               pd.merge(obitos_sudeste,  
                                        pd.merge(obitos_sul,obitos_centro, 
                                                 on=['Ano', 'virus']),
                                        on=['Ano', 'virus']),
                               on=['Ano', 'virus']),
                      on=['Ano', 'virus'])
#Transformando as colunas relacionadas às regiões em uma coluna só 'Regiao'
obitos_reg = pd.melt(obitos_reg , id_vars=['Ano', 'virus'], var_name='Regiao', value_name='Obitos')
obitos_reg
#Juntando os dados de casos e óbitos
dados_reg = pd.merge(casos_reg, obitos_reg, on=['Ano', 'virus', 'Regiao'], how='left')
dados_reg<jupyter_output><empty_output><jupyter_text>Agora que os dados de casos e óbitos em apenas uma tabela vou tratar os dados relacionados à população para criar taxas relativas às populações<jupyter_code>#Eliminando as linhas nulas dos dados de população
pop_2001_2019 = pop_2001_2019.dropna()

#Filtrando os dados onde a coluna 'Unidades da Federação' está relacionada à alguma região usando regular expressions
pop_2001_2019 = pop_2001_2019[pop_2001_2019['Unidades da Federação'].str.match(r'Região\s.*')]

#Renomenando a coluna 'Unidades da Federação' para 'Regiao' 
pop_2001_2019 = pop_2001_2019.rename(columns={'Unidades da Federação':'Regiao'})

#Eliminando a Palavra 'Região' antes do nome da região
pop_2001_2019['Regiao'] = pop_2001_2019['Regiao'].str.replace(r'Região\s', '')

#Transformando as colunas relacionadas aos anos em uma coluna só 'Ano'
pop_2001_2019 = pd.melt(pop_2001_2019, 'Regiao', var_name='Ano', value_name='Pop')

#Tranformando à coluna 'Ano' para o tipo inteiro
pop_2001_2019['Ano'] = pop_2001_2019['Ano'].astype('int64')
pop_2001_2019
#Juntando os dados de casos e óbitos com dados de estimativa populacional
dados_reg = pd.merge(dados_reg, pop_2001_2019, on=['Regiao','Ano'])

#Criando a coluna 'taxa_incid_por100k' que indica a taxa de incidência das Hepatites a cada 100.000 habitantes
dados_reg['taxa_incid_por100k'] = dados_reg['Casos'] * 100000 / dados_reg['Pop']

#Criando a coluna 'taxa_obitos_por100k' que indica a taxa de óbitos por Hepatites a cada 100.000 habitantes
dados_reg['taxa_obitos_por100k'] = dados_reg['Obitos'] * 100000 / dados_reg['Pop']
dados_reg
#Removendo coluna 'Pop' pois não será mais utilizada
dados_reg = dados_reg.drop(columns='Pop')
#Salvando todos os dados na pasta 'dados_tratados'
dados_reg.set_index('Ano').to_csv('../dados_tratados/casos_obitos_por_regiao')<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.09197696737044146, 'fraction_numerical': 0.031861804222648754, 'mean_word_length': 4.841255605381166, 'pattern_counts': {'":': 0, '<': 40, '<?xml version=': 0, '>': 40, 'https://': 9, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 15, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '10', 'dir': 'jupyter-structured-clean-dedup', 'id': '643966', 'license': 'MIT', 'n_tokens_mistral': 5338, 'n_tokens_neox': 4879, 'n_words': 1042, 'path': 'notebooks/tratamento_casos_por_regiao.ipynb', 'repo_name': 'PedroHCAlmeida/projeto_um_mal_silencioso', 'size': '13025'}