El módulo numpy de Python proporciona una función llamada numpy.average(), que se utiliza para calcular el promedio ponderado a lo largo del eje especificado.
Sintaxis:
numpy.average(a, axis=None, weights=None, returned=False)
Parámetros:
x: tipo matriz
Este parámetro define la matriz fuente cuyo promedio de elementos queremos calcular. Se intentará la conversión si 'x' es una matriz.
eje: int o Ninguno o tupla de enteros (opcional)
Este parámetro define el eje a lo largo del cual se calculará el promedio. De forma predeterminada, el eje está establecido en Ninguno, lo que calculará el promedio de todos los elementos de la matriz de origen. Los conteos comienzan desde el final hasta el eje inicial cuando el valor del eje es negativo.
pesos: array_like (opcional)
Este parámetro define una matriz que contiene pesos asociados con los valores de la matriz. Cada valor de los elementos de la matriz juntos hace el promedio según su peso asociado. La matriz ponderada puede ser unidimensional o tener la misma forma que la matriz de entrada. Cuando no hay ningún peso asociado con el elemento de la matriz, el peso se tratará como 1 para todos los elementos.
devuelto: bool (opcional)
De forma predeterminada, este parámetro está establecido en Falso. Si lo configuramos como Verdadero, se devuelve una tupla de promedio y suma_de_pesos. Si es False, se devuelve el promedio. La suma ponderada es equivalente al número de elementos si no hay valores para los pesos.
Devoluciones:
valor de recuperación, [suma_de_pesos]: tipo_matriz o doble
Esta función devuelve el promedio o tanto el promedio como la suma_de_pesos que dependen del parámetro devuelto.
Sube:
Error de división cero
Este error surge cuando todos los pesos a lo largo del eje se establecen en cero.
Error de tecleado
Este error surge cuando la longitud de la matriz ponderada no es la misma que la forma de la matriz de entrada.
partido_preg
Ejemplo 1:
import numpy as np data = list(range(1,6)) output=np.average(data) data output
Producción:
[1, 2, 3, 4, 5] 3.0
En el código anterior:
- Hemos importado numpy con nombre de alias np.
- Hemos creado una lista de elementos. 'datos' .
- Hemos declarado la variable 'producción' y se le asignó el valor devuelto de promedio() función.
- Hemos pasado la lista. 'datos' en la función.
- Por último, intentamos imprimir el 'datos' y 'producción'
En el resultado, muestra el promedio de los elementos de la lista.
Ejemplo 2:
import numpy as np output=np.average(range(1,16), weights=range(15,0,-1)) output
Producción:
5.666666666666667
Ejemplo 3:
import numpy as np data=np.arange(12).reshape((4,3)) output = np.average(data, axis=1, weights=[1./4, 3./4, 5./4]) data output
Producción:
array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11]]) array([ 1.44444444, 4.44444444, 7.44444444, 10.44444444])
En el código anterior:
- Hemos importado numpy con nombre de alias np.
- Hemos creado una matriz. 'datos' usando organizar() y np.reformar() función.
- Hemos declarado la variable 'producción' y se le asignó el valor devuelto de promedio() función.
- Hemos pasado la matriz. 'datos' , establezca el eje en 1 y la matriz ponderada en la función.
- Por último, intentamos imprimir el 'datos' y 'producción'
En el resultado, muestra el promedio de los elementos de cada columna en la matriz.
Ejemplo 4:
import numpy as np data=np.arange(12).reshape((4,3)) data np.average(data, weights=[1./4, 3./4, 5./4])
Producción:
array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11]]) Traceback (most recent call last): File '', line 1, in File 'C:Python27libsite-packages umpylibfunction_base.py', line 406, in average 'Axis must be specified when shapes of data and weights.' TypeError: Axis must be specified when shapes of data and weights differ.