Como obter a contagem de filas de um Pandas DataFrame

  1. Método shape para obter a contagem de linhas de Dataframe
  2. .len(DataFrame.index) como o método mais rápido para obter a contagem de linhas em Pandas
  3. dataframe.apply() para a contagem de linhas que satisfazem uma condição em Pandas

Apresentaremos como obter a contagem de linhas de um Pandas dataframe, com diferentes métodos como shape e len(DataFrame.index). Eles têm notáveis diferenças de desempenho e o método len(DataFrame.index) é o mais rápido.

Também analisamos como podemos utilizar o dataframe.apply() para obter quantos elementos de linhas satisfazem uma condição ou não.

Método shape para obter a contagem de linhas de Dataframe

Suponha que df seja nosso dataframe , para calcular a contagem de filas,

# python 3.x
import pandas as pd
import numpy as np
df = pd.DataFrame(np.arange(15).reshape(3,5))
print(df)
print('Row count is:',df.shape[0])

Resultado:

    0   1   2   3   4
0   0   1   2   3   4
1   5   6   7   8   9
2  10  11  12  13  14
Row count is: 3

Para a contagem de colunas, podemos utilizar df.shape[1].

.len(DataFrame.index) como o método mais rápido para obter a contagem de linhas em Pandas

Podemos calcular a contagem das filas no Dataframe obtendo o comprimento da fila índice.

# python 3.x
import pandas as pd
import numpy as np
df = pd.DataFrame(np.arange(15).reshape(3,5))
print(df)
print('Row count is:',len(df.index))

Resultado:

    0   1   2   3   4
0   0   1   2   3   4
1   5   6   7   8   9
2  10  11  12  13  14
Row count is: 3 

Também podemos passar df.axes[0] em vez de df.index:

# python 3.x
import pandas as pd
import numpy as np
df = pd.DataFrame(np.arange(15).reshape(3,5))
print(df)
print('Row count is:',len(df.axes[0]))

Resultado:

    0   1   2   3   4
0   0   1   2   3   4
1   5   6   7   8   9
2  10  11  12  13  14
Row count is: 3

Para a contagem de colunas, podemos utilizar df.axes[1].

dataframe.apply() para a contagem de linhas que satisfazem uma condição em Pandas

Ao contar o número de True no resultado retornado de Dataframe.apply(), podemos obter a contagem de linhas em Dataframe que satisfazem a condição.

# python 3.x
import pandas as pd
import numpy as np
df = pd.DataFrame(np.arange(15).reshape(3,5))
counterFunc = df.apply(
    lambda x: True if x[1] > 3 else False , axis=1)
numOfRows = len(counterFunc[counterFunc == True].index)
print(df)
print('Row count > 3 in column[1]is:',numOfRows)

Resultado:

    0   1   2   3   4
0   0   1   2   3   4
1   5   6   7   8   9
2  10  11  12  13  14
Row count > 3 in column[1]is: 2

Conseguimos a contagem de linhas cujo valor na column[1] é maior que 3.

Artigo relacionado - Pandas DataFrame Row

  • Obter Índice de Linhas cuja Coluna Corresponde a Valor Específico em Pandas
  • Como filtrar linhas de dados com base nos valores das colunas em Pandas