Photo by Brett Jordan on Unsplash |
Nos exemplos dos tutoriais anteriores vimos como chamar alguns métodos das séries. Nesses exemplos trabalhamos apenas com colunas ou séries. Esses métodos eram de agregação ou redução que retornavam séries. Chamando esses mesmos métodos a partir de um dataframe as operações serão executadas em todas as colunas e não apenas em uma, reduzindo os resultados para cada coluna do dataframe. Muitos desses métodos retornam uma série com os nomes das colunas e os valores correspondentes.
Nesse tutorial, vamos ver mais alguns dos atributos e métodos que podemos utilizar com os dataframe Pandas. Vamos utilizar o dataframe filmes.csv, que já usamos nos post anteriores.
Como resumir um dataframe
Vamos abrir o dataframe filmes e chamar os atributos shape
, size
e ndim
. E depois vamos utilizar a função interna do python len()
. O atributo shape
retorna uma tupla com os dois valores, o primeiro é o número de linhas do dataframe e o segundo é o número de colunas. O atributo size
retorna o numero de elementos do dataframe. O ndim
retorna o número de dimensões do dataframe. E a função len retorna o número de linhas do dataframe Pandas.
>>> import pandas as pd >>> filmes = pd.read_csv('filmes.csv') >>> filmes.shape (9262, 9) >>> filmes.size 83358 >>> filmes.ndim 2 >>> len(filmes) 9262
Nos dataframe é comum estar faltando alguns elementos, se você quiser saber a quantidade de, apenas, elementos presentes use o método count()
. Esse método retorna uma série com os rótulos das colunas e a quantidade de elementos com valores, excluindo da contagem os elementos vazios.
>>> filmes.count() indice 9262 codigo_obra 9262 titulo_original 9262 titulo_brasil 9262 ano_producao 9259 diretor 9262 razao_social_requerente 9262 cnpj_requerente 9262 data_exibicao 9262 dtype: int64
Nesse exemplo os números retornados são iguais ao número de linhas, isso porque no dataframe filmes.csv não existe elementos vazios.
Se você precisar de estatísticas básicas como o valor mínimo, máximo, média e mediana, a biblioteca Pandas disponibiliza métodos que fornecem essas estatísticas. Veja um exemplo abaixo:
>>> filmes.min() indice 0 codigo_obra 1 titulo_original A PRIMEIRA MISSA"" titulo_brasil A PRIMEIRA MISSA"" ano_producao 200 diretor \t PABLO TRAPERO razao_social_requerente 13 PRODUÇÕES E LOCAÇÕES LTDA-ME cnpj_requerente 00.020.648/0001-20 data_exibicao 01/02/2005 dtype: object >>> filmes.max() indice 9261 codigo_obra 20002501 titulo_original ÚLTIMO TANGO EM BUENOS AIRES titulo_brasil ÚLTIMOS DIAS NO DESERTO ano_producao 2020 diretor ÉRIC WARIN razao_social_requerente ÍRIS CINEMATOGRÁFICA LTDA cnpj_requerente 97.533.170/0001-73 data_exibicao 31/mar/17 dtype: object # média >>> filmes.mean() indice 4.630500e+03 codigo_obra 1.053494e+07 ano_producao 2.009945e+03 dtype: float64 # mediana >>> filmes.median() indice 4630.5 codigo_obra 15004498.0 ano_producao 2011.0 dtype: float64
Você pode obter essas estatísticas chamando um único método: o describe()
.
>>> filmes.describe() indice codigo_obra ano_producao count 9262.00000 9.262000e+03 9259.000000 mean 4630.50000 1.053494e+07 2009.944918 std 2673.85343 7.714715e+06 20.439854 min 0.00000 1.000000e+00 200.000000 25% 2315.25000 4.165462e+05 2006.000000 50% 4630.50000 1.500450e+07 2011.000000 75% 6945.75000 1.600608e+07 2015.000000 max 9261.00000 2.000250e+07 2020.000000
Uma coisa que afeto as estatísticas são os elementos vazios. Se você quer que esses elementos sejam ignorados utilize o parâmetro skipna
passando o valor True
. Se passarmos o valor False
, os elementos vazios vão entrar no calculo. Veja um exemplo:
>>> filmes.min(skipna=False) indice 0 codigo_obra 1 titulo_original A PRIMEIRA MISSA"" titulo_brasil A PRIMEIRA MISSA"" ano_producao 200 diretor \t PABLO TRAPERO razao_social_requerente 13 PRODUÇÕES E LOCAÇÕES LTDA-ME cnpj_requerente 00.020.648/0001-20 data_exibicao 01/02/2005 dtype: object
Todos os métodos de estatísticas têm o parâmetro skipna
. O valor padrão é True
.
0 comentários:
Postar um comentário