HOWTO · NumPy

Obtenha o número de linhas em NumPy

A propriedade array.shape pode ser usada para determinar o número de linhas e colunas em um array NumPy em Python.

Nesta página

Para obter o número de linhas de um array NumPy bidimensional, use array.shape[0]. A propriedade array.shape fornece a tupla completa de dimensões: (rows, columns) para um array 2D. Tanto len(array) quanto np.size(array, 0) retornam a mesma contagem do primeiro eixo.

Os exemplos a seguir requerem Python com NumPy instalado.

Obtenha o número de linhas de um array NumPy usando a propriedade array.shape

O NumPy numera os eixos a partir de 0. Em um array 2D, o eixo 0 corresponde às linhas e o eixo 1, às colunas. Use array.shape[0] para obter as linhas ou array.shape[1] para obter as colunas; nenhuma das expressões exige parênteses após shape.

Execute este exemplo:

O código e os rótulos ou saídas exibidos nesta seção permanecem em inglês.

import numpy as np

array = np.array([[1, 3, 5], [2, 4, 6]])

rows = array.shape[0]
columns = array.shape[1]

print("Rows =", rows)
print("Columns =", columns)

Saída:

Rows = 2
Columns = 3

As duas listas internas formam duas linhas, cada uma com três valores. Portanto, sua forma é (2, 3). Se souber que o array é bidimensional, você também pode desempacotar as duas dimensões com rows, columns = array.shape.

Um array unidimensional tem uma forma como (3,), sem dimensões separadas para linhas e colunas. Seu shape[0] corresponde à quantidade de elementos, e shape[1] não está disponível. Verifique array.ndim == 2 quando a aplicação exigir especificamente dados tabulares. Em arrays com mais dimensões, shape[0] ainda descreve o primeiro eixo, cujo significado depende de como os dados estão organizados.

Obtenha o número de linhas de um array NumPy usando a função len()

A função integrada len() do Python retorna o comprimento da primeira dimensão de um array NumPy. Em um array 2D, ela conta as linhas, e não todos os valores individuais.

O código e os rótulos ou saídas exibidos nesta seção permanecem em inglês.

import numpy as np

array = np.array([[1, 3, 5], [2, 4, 6]])

num_rows = len(array)
print("Rows =", num_rows)

Saída:

Rows = 2

Neste caso, cada item do primeiro eixo é uma linha com três valores. Portanto, len(array) representa a mesma contagem que array.shape[0]. Evite usar len(array[0]) para contar linhas: essa expressão mede o comprimento da primeira linha e também exige que exista uma primeira linha.

Um array com forma (0, 3) não tem linhas, então tanto len(array) quanto array.shape[0] retornam 0. Um array escalar não tem primeiro eixo, portanto nenhuma das expressões fornece uma contagem de linhas.

Obtenha o número de linhas de um array NumPy usando a função np.size()

A função np.size() recebe um array e um axis inteiro opcional. Especifique axis=0 para obter o comprimento da primeira dimensão. A forma posicional np.size(array, 0) é equivalente.

O código e os rótulos ou saídas exibidos nesta seção permanecem em inglês.

import numpy as np

array = np.array([[1, 3, 5], [2, 4, 6]])

num_rows = np.size(array, 0)
print("Rows =", num_rows)

Saída:

Rows = 2

Omitir axis muda o que está sendo contado: np.size(array) conta todos os elementos. Neste array de duas linhas e três colunas, o total é 6, enquanto o comprimento do primeiro eixo é 2. Da mesma forma, np.size(array, axis=1) fornece a quantidade de colunas em um array 2D. O argumento de eixo seleciona uma dimensão; ele não é uma tupla de eixos.

Conclusão

Use array.shape[0] para obter diretamente a quantidade de linhas de um array NumPy 2D. len(array) e np.size(array, 0) retornam a mesma contagem; np.size(array) retorna o total de elementos.