Python - Matriz. Búsqueda posición

 
Vista:

Matriz. Búsqueda posición

Publicado por Leticia (10 intervenciones) el 19/10/2020 14:59:07
Hola, tengo que generar una matriz de 3x3 de números reales aleatorios con valores entre 1000 y 10000 y extraer la información siguiente:
- Valor máximo y su posición en la matriz (fila y columna)
- Mediana y su posición en la matriz (fila y columna)

Tengo esto:


1
2
3
4
5
6
7
8
9
10
11
12
13
14
import random
import numpy
 
randomMatrix = numpy.random.randint(1000,10000,(3,3))
print (randomMatrix)
 
vector=np.array(lista)
print(vector)
 
mayor = max(vector)
print ('Elemento máximo es:', mayor)
 
mediana = median(vector)
print ('La mediana es:', mediana)

Decir que soy principiante en Python...

¿Alguien podría darme alguna pista de cómo seguir?

Mil gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Matriz. Búsqueda posición

Publicado por yoyyo (1 intervención) el 19/10/2020 18:57:53
hola:

no es necesario que aclares que eres principiante se notan claramente los incongruencias del copiar y pegar.
Asumo que tenés que hacerlo con numpy, porque no es que sea estrictamente necesario:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#-*- coding: utf - 8 -*-
import numpy as np
 
randomMatrix = np.random.randint(1000,10000,(3,3))
print(randomMatrix)
 
mayor = np.max(randomMatrix)
print('El elemento máximo es: ',mayor)
 
media = np.median(randomMatrix)
print('La media es: ',int(media))
 
donde_mayor = np.where(randomMatrix == mayor )
#donde_mayor = np.where(np.max(randomMatrix) == randomMatrix )  #también se puede escribir directamente así
 
print(f'El elemento mayor está en la fila {donde_mayor[0]} y columna {donde_mayor[1]}')

falta la ubicación de la media, pero es como la del elemento mayor, así que suppongo no te dará problemas crearlo vos.

Cuando llamas a numpy sin un alias (np) en cada caso debes llamar a numpy, si te fijas tu código tiene mezclado con alias y sin él.
y usas max() propio de python no de numpy, por lo tanto :

1
mediana = median(vector)

te dará error ya que no existe fuera de numpy.

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Matriz. Búsqueda posición

Publicado por Leticia (10 intervenciones) el 19/10/2020 19:04:38
Muchas gracias.

Entonces podría hacerlo también sin usar numpy y poniendo directamente mayor = max(randomMatrix) si he entendido bien.

Muchas gracias en cualquier caso por la explicación!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar