Python - Modificar valores posición pares en una matriz

 
Vista:

Modificar valores posición pares en una matriz

Publicado por Rebecca (8 intervenciones) el 17/11/2019 19:04:38
Buenas, he generado una matriz formada por 0 de 10x10 con numpy.
Siendo (i,j) la posición de los números en la matriz, me gustaría modificar el número que aparece en las posiciones pares por los resultados de multiplicar sus posiciones, es decir, en la posición (2,2) modificar el 0 para que me aparezca 2*2.

Mi idea principal / básica era usar:
1
2
if i % 2 == 0 and j % 2 == 0:
    print(i*j)
pero no sé si es el adecuado y no sé cómo hacerlo para que me modifique la matriz.

Me podéis ayudar?
Gracias de antemano!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
1
Responder
Imágen de perfil de zer0x10
Val: 425
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

Modificar valores posición pares en una matriz

Publicado por zer0x10 (109 intervenciones) el 18/11/2019 02:25:32
Hola Rebecca, puedes hacer algo como esto:

1
2
3
4
5
6
7
8
a = np.zeros(100).reshape((10,10))
i, j = 2, 2
while i < 10:
  while j < 10:
    a[i][j] = i*j
    j+=2
  j=2
  i+=2

Lo que daría como resultado:
1
2
3
4
5
6
7
8
9
10
array([[ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  4.,  0.,  8.,  0., 12.,  0., 16.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0.,  8.,  0., 16.,  0., 24.,  0., 32.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0., 12.,  0., 24.,  0., 36.,  0., 48.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.],
       [ 0.,  0., 16.,  0., 32.,  0., 48.,  0., 64.,  0.],
       [ 0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.,  0.]])

Nos comentas.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-1
Comentar