Numpy mean() и average(): в чем разница?


Вы можете использовать функции np.mean() или np.average() для вычисления среднего значения массива в Python.

Вот тонкая разница между этими двумя функциями:

  • np.mean всегда вычисляет среднее арифметическое.
  • np.average имеет дополнительный параметр веса , который можно использовать для расчета средневзвешенного значения.

Следующие примеры показывают, как использовать каждую функцию на практике.

Пример 1. Используйте np.mean() и np.average() без весов.

Предположим, у нас есть следующая таблица в Python, содержащая семь значений:

 #create array of values
data = [1, 4, 5, 7, 8, 8, 10]

Мы можем использовать np.mean() и np.average() для вычисления среднего значения этого массива:

 import numpy as np

#calculate average value of array
n.p. mean (data)

6.142857142857143

#calculate average value of array
n.p. average (data)

6.142857142857143

Обе функции возвращают одно и то же значение.

Обе функции использовали следующую формулу для расчета среднего значения:

Среднее = (1 + 4 + 5 + 7 + 8 + 8 + 10) / 7 = 6,142857

Пример 2. Использование np.average() с весами

Предположим еще раз, что у нас есть следующий массив в Python, содержащий семь значений:

 #create array of values
data = [1, 4, 5, 7, 8, 8, 10]

Мы можем использовать np.average() для вычисления средневзвешенного значения для этого массива, предоставив список значений параметрам веса :

 import numpy as np

#calculate weighted average of array
n.p. average (data, weights=(.1, .2, .4, .05, .05, .1, .1))

5.45

Средневзвешенное значение оказывается равным 5,45 .

Вот формула, используемая np.average() для расчета этого значения:

Средневзвешенное значение = 1*,1 + 4*,2 + 5*,4 + 7*,05 + 8*,05 + 8*,1 + 10*,1 = 5,45 .

Обратите внимание, что мы не могли использовать np.mean() для выполнения этого расчета, поскольку эта функция не имеет параметра веса .

Обратитесь к документации NumPy для полного объяснения функций np.mean() и np.average() .

Дополнительные ресурсы

Следующие руководства объясняют, как рассчитать другие средние значения в Python:

Как рассчитать скользящие средние в Python
Как рассчитать совокупное среднее значение в Python

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *