Модулът numpy на Python предоставя функция, наречена numpy.average(), използвана за изчисляване на среднопретеглената стойност по определената ос.
Синтаксис:
numpy.average(a, axis=None, weights=None, returned=False)
Параметри:
x: array_like
java util дата
Този параметър дефинира изходния масив, чиято средна стойност на елемента искаме да изчислим. Преобразуването ще бъде направено, ако 'x' е масив.
ос: int или None или кортеж от ints (по избор)
Този параметър определя оста, по която ще се изчислява средната стойност. По подразбиране оста е зададена на Няма, което ще изчисли средната стойност на всички елементи на изходния масив. Преброяването започва от крайната към началната ос, когато стойността на оста е отрицателна.
тегла: array_like (по избор)
Този параметър дефинира масив, съдържащ тегла, свързани със стойностите на масива. Всяка стойност на елементите на масива заедно прави средната стойност според свързаното с нея тегло. Претегленият масив може да бъде едномерен или със същата форма като входния масив. Когато няма тегло, свързано с елемента на масива, теглото ще се третира като 1 за всички елементи.
върнато: bool (по избор)
По подразбиране този параметър е зададен на False. Ако го зададем като True, тогава се връща кортеж от средно и sum_of_weights. Ако е False, се връща средната стойност. Претеглената сума е еквивалентна на броя на елементите, ако няма стойности за тегла.
Се завръща:
retval, [сума_на_тегла]: тип_масив или двойно
Тази функция връща или средната стойност, или както средната стойност, така и sum_of_weights, които зависят от върнатия параметър.
Повишава:
ZeroDivisionError
Тази грешка се появява, когато всички тегла по оста са зададени на нула.
TypeError
конвенции за именуване на java
Тази грешка възниква, когато дължината на претегления масив не е същата като формата на входния масив.
Пример 1:
import numpy as np data = list(range(1,6)) output=np.average(data) data output
Изход:
[1, 2, 3, 4, 5] 3.0
В горния код:
пружина и пружина mvc
- Импортирахме numpy с псевдоним np.
- Създадохме списък с елементи 'данни' .
- Ние сме декларирали променливата 'изход' и присвои върнатата стойност на средно аритметично() функция.
- Минахме списъка 'данни' във функцията.
- Накрая се опитахме да отпечатаме 'данни' и 'изход'
В изхода той показва средната стойност на елементите на списъка.
Пример 2:
import numpy as np output=np.average(range(1,16), weights=range(15,0,-1)) output
Изход:
5.666666666666667
Пример 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
Изход:
array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11]]) array([ 1.44444444, 4.44444444, 7.44444444, 10.44444444])
В горния код:
- Импортирахме numpy с псевдоним np.
- Създадохме масив 'данни' използвайки подреждам () и np.reshape() функция.
- Ние сме декларирали променливата 'изход' и присвои върнатата стойност на средно аритметично() функция.
- Минахме масива 'данни' , задайте ос на 1 и претеглен масив във функцията.
- Накрая се опитахме да отпечатаме 'данни' и 'изход'
В изхода той показва средната стойност на всеки елемент от колона в масива.
Пример 4:
import numpy as np data=np.arange(12).reshape((4,3)) data np.average(data, weights=[1./4, 3./4, 5./4])
Изход:
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.