logo

numpy.average() в Python

Модулът 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. 

Забележка: Изходът показва грешка при типа: „Осът трябва да бъде посочен, когато формите на данните и теглата се различават“, тъй като формата на масива „тегла“ не е същата като входния масив „данни“.