utils_gabriel module
Esse modulo contem as ferramentas necessarias para uma analise a cerca dos imcs dos alistados.
- utils_gabriel.bar_plot_imc()
Funcao que cria a visualizacao para a analise do IMC. Note que ela baixa os arquivos para vis caso necessario.
- utils_gabriel.create_imc(df, height_colname: str, weight_colname: str)
Cria a coluna imc para uma tabela. Lembrando que o IMC calcula se pelo peso(kg)/altura(m)**2.
Parameters
- dfpandas.DataFrame
Tabela que tenha colunas de altura e peso.
- height_colnamestr
Nome da coluna do DataFrame que representa a altura.
- weight_colnamestr
Nome da coluna do DataFrame que representa o peso.
Returns
- dfpandas.DataFrame or None
Retorna uma tabela que contenha a coluna IMC. Retorna None se alguma das exeções forem encontradas.
Example
Exemplo em que cria a coluna imc com sucesso.
>>> import pandas as pd >>> dados = {'Altura(cm)': [160, 175, 150, 180], ... 'Peso(kg)': [65, 80, 55, 90]} >>> df = pd.DataFrame(dados) >>> df = create_imc(df, 'Altura(cm)', 'Peso(kg)') >>> df Peso(kg) ALTURA(m) IMC 0 65 1.60 25.390625 1 80 1.75 26.122449 2 55 1.50 24.444444 3 90 1.80 27.777778
- utils_gabriel.df_allyears(data_list: list)
Concatena os DataFrames de todos os anos.
Parameters
- data_listlist
Lista com os dataframes.
Returns
- df_concatenadopandas.DataFrame
DataFrame com dados de todos os anos sobre alistamento militar no Brasil.
Raises
- ValueError
Se os nomes das colunas dos dataframes forem diferentes, ou o tamanho da lista de dataframes for menor que dois.
Example
Exemplo em que concatena dois dataframes com colunas com nomes iguais.
>>> import pandas as pd >>> data_list = [pd.DataFrame({'Ano': [2007, 2008], 'Valor': [10, 20]}), ... pd.DataFrame({'Ano': [2009, 2010], 'Valor': [30, 40]})] >>> df_allyears(data_list) Ano Valor 0 2007 10 1 2008 20 2 2009 30 3 2010 40
- utils_gabriel.percentage_formatter(x, pos)
Formata um número como uma string de porcentagem sem casas decimais. Recebe a variavel pos, pois para plotar viu se necessario para o FuncFormatter funcionar.
Parameters
- xfloat
O valor numérico a ser formatado como porcentagem.
- posint
A posição no eixo em que o valor x está sendo usado.
Returns
- str
Uma string formatada representando o valor x como uma porcentagem inteira.
Example
>>> percentage_formatter(0.25, 0) '25%' >>> percentage_formatter(0.753, 1) '75%'
- utils_gabriel.percentage_value_counts(series)
Mostra a porcentagem que cada valor de uma serie panda representa do total.
Parameters
- seriespandas.Series
Série na qual se quer saber a porcentagem em que aparece cada valor.
Raises
- ValueError
Quando é passada uma série vazia.
Returns
- finaldfpandas.DataFrame
Retorna um data frame com a coluna PORCENTAGEM, em que os valores sao decimais que representam quantos por cento o index do data frame representa do total de ocorrências da serie panda, os index do data frame são os elementos da serie panda.
Example
>>> import pandas as pd >>> dados = pd.Series([1,2,2,2,3,4,4,4,5,5]) >>> print(percentage_value_counts(dados)) PORCENTAGEM 2 0.3 4 0.3 5 0.2 1 0.1 3 0.1
- utils_gabriel.read_local_data(path: str, dropnull: bool = False, cols: List[str] | None = None)
Lê um arquivo csv e cria um DataFrame.
Parameters
- pathstr
O caminho do arquivo csv que será lido.
- colslist
Lista com as colunas desejadas.
- dropnullbool
Se True, dpropa as linhas nulas, se False, não dropa.
Returns
- cleandfpandas.DataFrame
Retorna um DataFrame que pode ser utilizado para a análise de algo.
Raises
- NameError
Se o nome do arquivo passado nao existir no repositorio.
- utils_gabriel.save_data_in_list(dropna: bool = False, cols: List[str] | None = None)
Lê arquivos CSV dos anos de 2007 a 2022 e armazena os DataFrames em uma lista. Note que essa funcao apenas serve se o nome dos csvs forem compativeis com o formato ‘sermil{ano}.csv’ e todos eles estiverem baixados no repositorio.
Parameters
- colslist
Lista com as colunas desejadas dos datasets que serão salvos em uma lista.
- dropnabool
Se True dropa as linhas nulas dos datasets da lista, se False, não dropa.
Returns
- dataframeslist
Uma lista que contém os DataFrames correspondentes a cada ano. Para acessar o DataFrame gerado com os dados do ‘sermil2007.csv’, você pode usar dataframes[0], para ‘sermil2008.csv’, use dataframes[1], e assim por diante.