Numpy modul Pythonu poskytuje funkci nazvanou numpy.histogram() . Tato funkce představuje četnost počtu hodnot, které jsou porovnávány se sadou rozsahů hodnot. Tato funkce je podobná funkci hist() funkce matplotlib.pyplot .
Jednoduše řečeno, tato funkce se používá k výpočtu histogramu souboru dat.
Syntax:
numpy.histogram(x, bins=10, range=None, normed=None, weights=None, density=None)
Parametry:
x: array_like
Tento parametr definuje sloučené pole, pro které se vypočítá histogram.
přihrádky: int nebo sekvence str nebo skaláry (volitelné)
np kde
Pokud je tento parametr definován jako celé číslo, pak v daném rozsahu definuje počet přihrádek o stejné šířce. Jinak je definováno pole hran přihrádek, které se monotónně zvětšují. Obsahuje také okraj zcela vpravo, což umožňuje nestejnoměrné šířky přihrádky. Nejnovější verze numpy nám umožňuje nastavit parametry přihrádky jako řetězec, který definuje metodu pro výpočet optimální šířky přihrádky.
rozsah: (plovoucí, plovoucí) (volitelné)
npm cache vymazat
Tento parametr definuje dolní a horní rozsahy zásobníků. Ve výchozím nastavení je rozsah (x.min(), x.max()) . Hodnoty, které jsou mimo rozsah, jsou ignorovány. Rozsahy prvního prvku by měly být stejné nebo menší než rozsahy druhého prvku.
normed : bool (volitelné)
Tento parametr je stejný jako argument hustoty, ale může poskytnout nesprávný výstup pro nestejné šířky přihrádky.
váhy: array_like (volitelné)
html tagy
Tento parametr definuje pole, které obsahuje váhy a má stejný tvar jako 'X' .
hustota: bool (volitelné)
Pokud je nastavena na hodnotu True, výsledkem bude počet vzorků v každé přihrádce. Pokud je jeho hodnota False, výsledkem funkce hustoty bude hodnota funkce hustoty pravděpodobnosti v přihrádce.
Vrácení:
hist: pole
Funkce hustoty vrací hodnoty histogramu.
edge_bin: pole float dtype
Tato funkce vrací okraje přihrádky (délka(hist+1)) .
Příklad 1:
import numpy as np a=np.histogram([1, 5, 2], bins=[0, 1, 2, 3]) a
Výstup:
řetězec na celá čísla
(array([0, 1, 1], dtype=int64), array([0, 1, 2, 3]))
Ve výše uvedeném kódu
- Importovali jsme numpy s aliasem np.
- Deklarovali jsme proměnnou 'a' a přiřadili vrácenou hodnotu np.histogram() funkce.
- Předali jsme pole a hodnotu bin ve funkci.
- Nakonec jsme zkusili vytisknout hodnotu 'A' .
Ve výstupu ukazuje ndarray, který obsahuje hodnoty histogramu.
Fibonacci série v Javě
Příklad 2:
import numpy as np x=np.histogram(np.arange(6), bins=np.arange(7), density=True) x
Výstup:
(array([0.16666667, 0.16666667, 0.16666667, 0.16666667, 0.16666667, 0.16666667]), array([0, 1, 2, 3, 4, 5, 6]))
Příklad 3:
import numpy as np x=np.histogram([[1, 3, 1], [1, 3, 1]], bins=[0,1,2,3]) x
Výstup:
(array([0, 4, 2], dtype=int64), array([0, 1, 2, 3]))
Příklad 4:
import numpy as np a = np.arange(8) hist, bin_edges = np.histogram(a, density=True) hist bin_edges
Výstup:
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. ])
Příklad 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))
Výstup:
array([0.17857143, 0.17857143, 0.17857143, 0. , 0.17857143, 0.17857143, 0. , 0.17857143, 0.17857143, 0.17857143]) 1.4285714285714288 1.0
Ve výše uvedeném kódu
- Importovali jsme numpy s aliasem np.
- Vytvořili jsme pole 'A' použitím np.arange() funkce.
- Deklarovali jsme proměnné 'hist' a 'bin_eges' a poté přiřadil vrácenou hodnotu np.histogram() funkce.
- Prošli jsme polem 'A' a nastavit 'hustota' na hodnotu True ve funkci.
- Pokusili jsme se vytisknout hodnotu 'hist' .
- A nakonec jsme se pokusili vypočítat součet hodnot histogramu pomocí hist.sum() a np.sum() ve kterém jsme předali hodnoty histogramu a okraje přihrádky.
Ve výstupu ukazuje ndarray, který obsahuje hodnoty histogramu a součet hodnot histogramu.