logo

numpy.average() w Pythonie

Moduł numpy języka Python udostępnia funkcję o nazwie numpy.average(), służącą do obliczania średniej ważonej wzdłuż określonej osi.

Składnia:

 numpy.average(a, axis=None, weights=None, returned=False) 

Parametry:

x: tablica_podobna

Parametr ten definiuje tablicę źródłową, dla której chcemy obliczyć średnią elementu. Próba konwersji zostanie podjęta, jeśli „x” jest tablicą.

oś: int lub None lub krotka int (opcjonalnie)

Parametr ten określa oś, wzdłuż której będzie obliczana średnia. Domyślnie oś jest ustawiona na Brak, co spowoduje obliczenie średniej ze wszystkich elementów tablicy źródłowej. Zliczanie rozpoczyna się od końca do osi początkowej, gdy wartość osi jest ujemna.

zastępca komisarza policji

wagi: array_like (opcjonalnie)

Parametr ten definiuje tablicę zawierającą wagi powiązane z wartościami tablicy. Każda wartość elementów tablicy razem tworzy średnią zgodnie z powiązaną z nią wagą. Tablica ważona może być jednowymiarowa lub mieć taki sam kształt jak tablica wejściowa. Jeśli z elementem tablicy nie jest powiązana żadna waga, waga będzie traktowana jako 1 dla wszystkich elementów.

zwrócone: bool (opcjonalnie)

Domyślnie ten parametr jest ustawiony na False. Jeśli ustawimy ją na True, zwracana jest krotka średniej i sumy_wag. Jeśli ma wartość False, zwracana jest średnia. Suma ważona jest równa liczbie elementów, jeśli nie ma wartości wag.

Zwroty:

retval, [sum_of_weights]: typ_tablicy lub double

Ta funkcja zwraca średnią lub zarówno średnią, jak i sumę_wag, które zależą od zwróconego parametru.

Podnosi:

Błąd ZeroDivision

Ten błąd pojawia się, gdy wszystkie ciężary wzdłuż osi są ustawione na zero.

TypBłąd

Ten błąd jest zgłaszany, gdy długość tablicy ważonej nie jest taka sama jak kształt tablicy wejściowej.

Przykład 1:

 import numpy as np data = list(range(1,6)) output=np.average(data) data output 

Wyjście:

 [1, 2, 3, 4, 5] 3.0 

W powyższym kodzie:

  • Zaimportowaliśmy numpy z aliasem np.
  • Stworzyliśmy listę elementów 'dane' .
  • Zadeklarowaliśmy zmienną 'wyjście' i przypisano zwróconą wartość przeciętny() funkcjonować.
  • Przeszliśmy przez listę 'dane' w funkcji.
  • Na koniec próbowaliśmy wydrukować plik 'dane' I 'wyjście'

Na wyjściu wyświetlana jest średnia elementów listy.

Przykład 2:

 import numpy as np output=np.average(range(1,16), weights=range(15,0,-1)) output 

Wyjście:

 5.666666666666667 

Przykład 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 

Wyjście:

 array([[ 0, 1, 2], [ 3, 4, 5], [ 6, 7, 8], [ 9, 10, 11]]) array([ 1.44444444, 4.44444444, 7.44444444, 10.44444444]) 

W powyższym kodzie:

  • Zaimportowaliśmy numpy z aliasem np.
  • Stworzyliśmy tablicę 'dane' za pomocą układać() I np.reshape() funkcjonować.
  • Zadeklarowaliśmy zmienną 'wyjście' i przypisano zwróconą wartość przeciętny() funkcjonować.
  • Minęliśmy tablicę 'dane' , ustaw oś na 1 i tablicę ważoną w funkcji.
  • Na koniec próbowaliśmy wydrukować plik 'dane' I 'wyjście'

Na wyjściu wyświetlana jest średnia wszystkich elementów kolumny w tablicy.

porównywalny ciąg w Javie

Przykład 4:

 import numpy as np data=np.arange(12).reshape((4,3)) data np.average(data, weights=[1./4, 3./4, 5./4]) 

Wyjście:

 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. 

Uwaga: Dane wyjściowe pokazują błąd typu: „Należy określić oś, gdy kształty danych i wagi różnią się”, ponieważ kształt tablicy „wagi” nie jest taki sam, jak tablica wejściowa „dane”.