English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
a forma do array é o número de elementos em cada dimensão.
imprimir 2-a forma do array D:
import numpy as np arr = np.array([1, 2, 3, 4], [5, 6, 7, 8]) print(arr.shape)
Resultados da Execução
(2, 4)
o exemplo acima retorna (2, 4) 2 dimensões, cada uma com 4 elementos.
usando o valor 1,2,3,4 vetores criados com 5 arrays de 4:
import numpy as np arr = np.array([1, 2, 3, 4], ndmin=5) print(arr) print('shape of array:', arr.shape)
Resultados da Execução
[[[[1 2 3 4]]]] shape of array: (1, 1, 1, 1, 4)
cada índice inteiro indica o número de elementos na dimensão correspondente.
o índice no exemplo anterior 4nosso valor é 4dimensões, podemos dizer que o 5 de 4 + 1 tem 4 elementos.
modificar a forma do array
D 12 elementos de 1-Converter o Array D para 2-Array D.
A forma do array é o número de elementos em cada dimensão. Modificando a forma do array, podemos adicionar ou remover dimensões ou alterar o número de elementos em cada dimensão. 4 arrays, cada um contendo 3 arrays, cada um contendo
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(4, 3) print(newarr)
Resultados da Execução
[[ 1 2 3] [ 4 5 6] [ 7 8 9] [10 11 12]]
D 12 elementos de 1-Converter o Array D para 3-Array D.
Vamos transformar o seguinte array com 2 arrays, onde a dimensão externa terá 3 arrays, cada um contendo 2 arrays, cada um contendo
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12]) newarr = arr.reshape(2, 3, 2) print(newarr)
Resultados da Execução
[[[ 1 2] [ 3 4] [ 5 6]] [[ 7 8] [ 9 10] [11 12]]
O array pode ser modificado para qualquer forma?
Sim, desde que o número de elementos necessários seja igual em ambas as formas. 8 elementos 1Podemos transformar 2 linhas 2D array dentro de 4 elementos, mas não podemos重塑它们为 3 elementos 3 linhas 2D array, pois isso exigiria 3x3 = 9 elementos.
Tente transformar um array com 8 elementos de 1Converter o Array D (gerará erro): 3 elementos de 2Array D (gerará erro):
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(3, 3) print(newarr)
Resultados da Execução
Traceback (última chamada mais recente): Arquivo "test.py", linha 5, in
Você pode usar uma dimensão 'desconhecida'.
Isso significa que você não precisa especificar um número exato para uma das dimensões no método reshape.
passar -1 como valor, o NumPy calculará esse número para você.
usando 8 elementos de 1Converter o Array D para 2x2 do elemento 3Array D:
import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) newarr = arr.reshape(2, 2, -1) print(newarr)
Resultados da Execução
[[[1 2] [3 4]] [[5 6] [7 8]]
Flattening the arrays) é converter arrays multidimensionais para 1Array D.
Podemos usar reshape(-1) para fazer isso.
Converter o array para 1Array D:
import numpy as np arr = np.array([1, 2, 3], [4, 5, 6]) newarr = arr.reshape(-1) print(newarr)
Resultados da Execução
[1 2 3 4 5 6]
Existem muitas funções que podem alterar a forma do array flatten, ravel e reordenar os elementos rot.90, flip, fliplr, flipud e outras. Essas funções pertencem à parte intermediária e avançada do NumPy.