Tengo una numeral ndarray con forma de (30,480,640), el 1 ° y 2 ° eje representa ubicaciones (latitud y longitud), el 0 ° eje contiene puntos de datos reales.Quiero usar el valor más frecuente a lo largo del eje 0 en cada ubicación , que es para construir una nueva matriz con forma de (1480640) .ie:¿Cómo encontrar los valores más frecuentes en numpy ndarray?
>>> data
array([[[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]],
[[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]],
[[40, 40, 42, 43, 44],
[45, 46, 47, 48, 49],
[50, 51, 52, 53, 54],
[55, 56, 57, 58, 59]]])
(perform calculation)
>>> new_data
array([[[ 0, 1, 2, 3, 4],
[ 5, 6, 7, 8, 9],
[10, 11, 12, 13, 14],
[15, 16, 17, 18, 19]]])
Los puntos de datos contendrán los números flotantes negtive y positivos. ¿Cómo puedo hacer esos cálculos? ¡Muchas gracias!
Intenté con numpy.unique, pero obtuve "TypeError: unique() obtuvo un argumento de palabra clave inesperado 'return_inverse'". Estoy usando la versión numpy 1.2.1 instalada en Unix y no es compatible con return_inverse. .También probé el modo, pero lleva una eternidad procesar tanta cantidad de datos ... ¿existe una forma alternativa de obtener los valores más frecuentes? Gracias de nuevo.
¿Qué quiere decir con valor dominante? No entiendo la pregunta. –
Voy a en segundo lugar el comentario de @HenryGomersall - No tengo un Scooby cuál es tu pregunta tampoco ... –
Lo siento por tu confusión ... Me refiero a los valores más frecuentes .. – oops