matrix = np.array([[0,0,0,0],[0,0,0,0],[0,0,0,0],[0,0,0,0]])
vector = np.array([0,0,0,0])
Para vetores, você pode editar todos os outros elementos assim
vector[1::2] = 1
Isto dá
np.array([0,1,0,1])
Contudo;
matrix[1::2] = 1
rendimentos
np.array([[0,0,0,0],[1,1,1,1],[0,0,0,0],[1,1,1,1]])
Eu gostaria da saída
np.array([[0,1,0,1],[0,1,0,1],[0,1,0,1],[0,1,0,1]])
Existe uma abordagem de força bruta para tomar a forma da matriz, achatá-la, usar [1 :: 2] e remodelar, mas tenho certeza de que estou perdendo uma solução mais elegante.
Qualquer ajuda seria apreciada.
Você pode fazer algo semelhante com a indexação multidimensional
>>> matrix
array([[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0],
[0, 0, 0, 0]])
>>> matrix[:,1::2] = 1
>>> matrix
array([[0, 1, 0, 1],
[0, 1, 0, 1],
[0, 1, 0, 1],
[0, 1, 0, 1]])
Este artigo é coletado da Internet.
Se houver alguma infração, entre em [email protected] Delete.
deixe-me dizer algumas palavras