logo

numpy.average() v Pythone

Numpy modul Pythonu poskytuje funkciu s názvom numpy.average(), ktorá sa používa na výpočet váženého priemeru pozdĺž špecifikovanej osi.

Syntax:

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

Parametre:

x: pole_like

Tento parameter definuje zdrojové pole, ktorého priemer prvku chceme vypočítať. Konverzia sa pokúsi, ak 'x' je pole.

axis: int alebo None alebo tuple of ints (voliteľné)

Tento parameter definuje os, pozdĺž ktorej sa vypočíta priemer. V predvolenom nastavení je os nastavená na Žiadne, čo vypočíta priemer všetkých prvkov zdrojového poľa. Počítania začínajú od koncovej k počiatočnej osi, keď je hodnota osi záporná.

váhy : array_like (voliteľné)

Tento parameter definuje pole obsahujúce váhy spojené s hodnotami poľa. Každá hodnota prvkov poľa spolu tvorí priemer podľa príslušnej hmotnosti. Vážené pole môže byť jednorozmerné alebo môže mať rovnaký tvar ako vstupné pole. Ak nie je k prvku poľa priradená žiadna váha, váha sa bude považovať za 1 pre všetky prvky.

vrátené: bool (voliteľné)

Predvolene je tento parameter nastavený na hodnotu False. Ak to nastavíme ako True, vráti sa n-tica priemeru a súčtu_váh. Ak je hodnota False, vráti sa priemer. Ak neexistujú žiadne hodnoty váh, vážený súčet je ekvivalentný počtu prvkov.

najlepšie hentai

Vrátenie:

retval, [sum_of_weights]: array_type alebo double

Táto funkcia vracia buď priemer, alebo priemer aj súčet_váh, ktoré závisia od vráteného parametra.

Zvyšuje:

ZeroDivisionError

Táto chyba sa zvýši, keď sú všetky závažia pozdĺž osi nastavené na nulu.

TypeError

Táto chyba sa objaví, keď dĺžka váženého poľa nie je rovnaká ako tvar vstupného poľa.

triedenie vkladania java

Príklad 1:

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

Výkon:

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

Vo vyššie uvedenom kóde:

  • Importovali sme numpy s aliasom np.
  • Vytvorili sme zoznam prvkov 'data' .
  • Deklarovali sme premennú 'výkon' a priradil vrátenú hodnotu priemer () funkciu.
  • Prešli sme zoznam 'data' vo funkcii.
  • Nakoniec sme sa pokúsili vytlačiť 'data' a 'výkon'

Vo výstupe zobrazuje priemer prvkov zoznamu.

Príklad 2:

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

Výkon:

 5.666666666666667 

Príklad 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 

Výkon:

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

Vo vyššie uvedenom kóde:

  • Importovali sme numpy s aliasom np.
  • Vytvorili sme pole 'data' použitím arange() a np.reshape() funkciu.
  • Deklarovali sme premennú 'výkon' a priradil vrátenú hodnotu priemer () funkciu.
  • Prešli sme pole 'data' , nastavte os na 1 a vážené pole vo funkcii.
  • Nakoniec sme sa pokúsili vytlačiť 'data' a 'výkon'

Vo výstupe zobrazuje priemer jednotlivých prvkov stĺpca v poli.

Príklad 4:

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

Výkon:

 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. 

Poznámka: Na výstupe sa zobrazuje chyba typu: 'Os musí byť špecifikovaná, keď sa tvary údajov a váh líšia', pretože tvar poľa 'váhy' nie je rovnaký ako tvar vstupného poľa 'údaje'.