logo

numpy.histogram() Pythonissa

Pythonin numpy-moduuli tarjoaa toiminnon nimeltä numpy.histogram() . Tämä funktio edustaa niiden arvojen lukumäärää, joita verrataan arvoalueisiin. Tämä toiminto on samanlainen kuin hist() funktio matplotlib.pyplot .

Yksinkertaisesti sanottuna tätä funktiota käytetään datajoukon histogrammin laskemiseen.

Syntaksi:

 numpy.histogram(x, bins=10, range=None, normed=None, weights=None, density=None) 

Parametrit:

x: array_like

Tämä parametri määrittää litteän taulukon, jonka yli histogrammi lasketaan.

laatikot: int tai str:n tai skalaarien sekvenssi (valinnainen)

Jos tämä parametri on määritelty kokonaisluvuksi, se määrittää annetulla alueella yhtä leveiden laatikoiden lukumäärän. Muussa tapauksessa määritetään joukko säiliön reunoja, jotka kasvavat monotonisesti. Se sisältää myös oikeanpuoleisen reunan, joka mahdollistaa epäyhtenäiset roskaleveydet. Numpyn uusin versio antaa meille mahdollisuuden asettaa bin parametrit merkkijonoksi, joka määrittää menetelmän optimaalisen säiliön leveyden laskemiseksi.

alue : (kelluke, kellua) (valinnainen)

Tämä parametri määrittää säiliöiden alemmat ylemmän alueen. Oletusarvoisesti alue on (x.min(), x.max()) . Arvot jätetään huomioimatta, jotka ovat alueen ulkopuolella. Ensimmäisen elementin alueiden tulee olla yhtä suuria tai pienempiä kuin toisen elementin.

normi: bool (valinnainen)

Tämä parametri on sama kuin tiheysargumentti, mutta se voi antaa väärän tulosteen epäyhtenäisille säiliöleveyksille.

painot : array_like (valinnainen)

Tämä parametri määrittää taulukon, joka sisältää painoja ja jolla on sama muoto kuin 'x' .

tiheys: bool (valinnainen)

Jos sen arvo on True, tuloksena on näytteiden määrä jokaisessa lokerossa. Jos sen arvo on False, tiheysfunktio johtaa todennäköisyystiheysfunktion arvoon bin.

Palautukset:

hist: array

Tiheysfunktio palauttaa histogrammin arvot.

edge_bin: float dtype -joukko

Tämä toiminto palauttaa lokeron reunat (pituus(hist+1)) .

vertaa merkkijonoja java

Esimerkki 1:

 import numpy as np a=np.histogram([1, 5, 2], bins=[0, 1, 2, 3]) a 

Lähtö:

 (array([0, 1, 1], dtype=int64), array([0, 1, 2, 3])) 

Yllä olevassa koodissa

  • Olemme tuoneet numpyn aliasnimellä np.
  • Olemme ilmoittaneet muuttujan 'a' ja määrittäneet palautetun arvon np.histogrammi() toiminto.
  • Olemme välittäneet taulukon ja bin arvon funktiossa.
  • Lopuksi yritimme tulostaa arvon 'a' .

Tulosteessa se näyttää ndarray-kuvan, joka sisältää histogrammin arvot.

Esimerkki 2:

 import numpy as np x=np.histogram(np.arange(6), bins=np.arange(7), density=True) x 

Lähtö:

 (array([0.16666667, 0.16666667, 0.16666667, 0.16666667, 0.16666667, 0.16666667]), array([0, 1, 2, 3, 4, 5, 6])) 

Esimerkki 3:

 import numpy as np x=np.histogram([[1, 3, 1], [1, 3, 1]], bins=[0,1,2,3]) x 

Lähtö:

 (array([0, 4, 2], dtype=int64), array([0, 1, 2, 3])) 

Esimerkki 4:

 import numpy as np a = np.arange(8) hist, bin_edges = np.histogram(a, density=True) hist bin_edges 

Lähtö:

 array([0.17857143, 0.17857143, 0.17857143, 0. , 0.17857143, 0.17857143, 0. , 0.17857143, 0.17857143, 0.17857143]) array([0. , 0.7, 1.4, 2.1, 2.8, 3.5, 4.2, 4.9, 5.6, 6.3, 7. ]) 

Esimerkki 5:

 import numpy as np a = np.arange(8) hist, bin_edges = np.histogram(a, density=True) hist hist.sum() np.sum(hist * np.diff(bin_edges)) 

Lähtö:

 array([0.17857143, 0.17857143, 0.17857143, 0. , 0.17857143, 0.17857143, 0. , 0.17857143, 0.17857143, 0.17857143]) 1.4285714285714288 1.0 

Yllä olevassa koodissa

  • Olemme tuoneet numpyn aliasnimellä np.
  • Olemme luoneet taulukon 'a' käyttämällä np.arange() toiminto.
  • Olemme ilmoittaneet muuttujat 'historia' ja 'bin_edges' ja määritti sitten palautetun arvon np.histogrammi() toiminto.
  • Olemme läpäisseet joukon 'a' ja aseta 'tiheys' funktiossa True.
  • Yritimme tulostaa arvon 'historia' .
  • Ja lopuksi yritimme laskea histogrammiarvojen summan käyttämällä hist.sum() ja np.sum() jossa välitimme histogrammiarvot ja säiliön reunat.

Tulosteessa se näyttää ndarray-kuvan, joka sisältää histogrammin arvot ja histogrammien arvojen summan.