Bagaimana Anda menemukan distribusi binomial di python?

Biarkan $X_1, X_2, \ldots , X_n$ menjadi i. i. d. Bernoulli $(p)$ variabel acak dan biarkan $S_n = X_1 + X_2 \ldots + X_n$. Itu cara formal untuk mengatakannya

  • Misalkan Anda memiliki jumlah tetap $n$ percobaan sukses/gagal;
  • uji coba bersifat independen;
  • pada setiap percobaan, kemungkinan sukses adalah $p$
  • Biarkan $S_n$ menjadi jumlah total keberhasilan

Tujuan pertama dari bagian ini adalah menemukan distribusi $S_n$

Dalam contoh yang kita tetapkan sebelumnya, kita menghitung angka enam dalam 7 gulungan dadu. 7 gulungan tidak bergantung satu sama lain, peluang "sukses" (mendapatkan angka enam) adalah $1/6$ pada setiap percobaan, dan $S_7$ adalah jumlah angka enam

Langkah pertama dalam menemukan distribusi variabel acak adalah mengidentifikasi nilai yang mungkin dari variabel tersebut. Dalam uji coba $n$, jumlah keberhasilan terkecil yang dapat Anda peroleh adalah 0 dan terbesar adalah $n$. Jadi himpunan nilai yang mungkin dari $S_n$ adalah $\{0, 1, 2, \ldots , n\}$

Dengan demikian jumlah enam dalam 7 gulungan dapat berupa bilangan bulat apa pun dalam rentang 0 hingga 7. Untuk $k = 3$, ayo cari $P(S_7 = 3)$

Partisi $\{S_7 = 3\}$ ke dalam berbagai cara yang dapat terjadi. Salah satu cara dapat dilambangkan SSSFFFF, di mana S menunjukkan "sukses" (atau "enam"), dan F menunjukkan kegagalan. Lainnya adalah SFFSSFF. Dan seterusnya

Sekarang perhatikan itu

$$ P(\text{SSSFFFF}) = \besar{(}\frac{1}{6}\besar{)}^3 \besar{(}\frac{5}{6}\besar{)}^

oleh kemerdekaan. Memang, urutan apa pun dari tiga S dan empat F memiliki probabilitas yang sama. Jadi dengan aturan penjumlahan,

\begin{align*} P(S_7 = 3) &= \text{(jumlah barisan tiga S dan empat F)} \cdot \big{(}\frac{1}{6}\big{)}^

karena $\binom{7}{3}$ menghitung jumlah cara Anda dapat memilih 3 tempat dari 7 tempat untuk meletakkan simbol S;

Model distribusi binomial berurusan dengan menemukan probabilitas keberhasilan suatu peristiwa yang hanya memiliki dua hasil yang mungkin dalam serangkaian percobaan. Misalnya, pelemparan koin selalu menghasilkan kepala atau ekor. Probabilitas menemukan tepat 3 kepala dalam pelemparan koin berulang kali sebanyak 10 kali diperkirakan selama distribusi binomial

Kami menggunakan pustaka python seaborn yang memiliki fungsi bawaan untuk membuat grafik distribusi probabilitas tersebut. Selain itu, bantuan paket scipy adalah membuat distribusi binomial

from scipy.stats import binom
import seaborn as sb

binom.rvs(size=10,n=20,p=0.8)

data_binom = binom.rvs(n=20,p=0.8,loc=0,size=1000)
ax = sb.distplot(data_binom,
                  kde=True,
                  color='blue',
                  hist_kws={"linewidth": 25,'alpha':1})
ax.set(xlabel='Binomial', ylabel='Frequency')

Outputnya adalah sebagai berikut −

Bagaimana Anda menemukan distribusi binomial di python?

Sebagai turunan dari kelas, objek mewarisi kumpulan metode generik (lihat di bawah untuk daftar lengkap), dan melengkapinya dengan detail khusus untuk distribusi khusus ini

Lihat juga

, ,

Catatan

Fungsi massa probabilitas untuk adalah

\[f(k) = \binom{n}{k} p^k (1-p)^{n-k}\]

untuk \(k \in \{0, 1, \dots, n\}\) , \(0 \leq p \leq 1\)

membutuhkan \(n\) dan \(p\) as shape parameters, where \(p\) is the probability of a single success and \(1-p\) is the probability of a single failure.

Fungsi massa probabilitas di atas didefinisikan dalam bentuk "standar". Untuk menggeser distribusi gunakan parameter

>>> n, p = 5, 0.4
>>> mean, var, skew, kurt = binom.stats(n, p, moments='mvsk')
_3. Secara khusus,
>>> n, p = 5, 0.4
>>> mean, var, skew, kurt = binom.stats(n, p, moments='mvsk')
_4 identik dengan
>>> n, p = 5, 0.4
>>> mean, var, skew, kurt = binom.stats(n, p, moments='mvsk')
5

Contoh

>>> import numpy as np
>>> from scipy.stats import binom
>>> import matplotlib.pyplot as plt
>>> fig, ax = plt.subplots(1, 1)
_

Hitung empat momen pertama

>>> n, p = 5, 0.4
>>> mean, var, skew, kurt = binom.stats(n, p, moments='mvsk')
_

Menampilkan fungsi massa probabilitas (

>>> n, p = 5, 0.4
>>> mean, var, skew, kurt = binom.stats(n, p, moments='mvsk')
6)

>>> x = np.arange(binom.ppf(0.01, n, p),
..               binom.ppf(0.99, n, p))
>>> ax.plot(x, binom.pmf(x, n, p), 'bo', ms=8, label='binom pmf')
>>> ax.vlines(x, 0, binom.pmf(x, n, p), colors='b', lw=5, alpha=0.5)

Alternatifnya, objek distribusi dapat dipanggil (sebagai fungsi) untuk memperbaiki bentuk dan lokasi. Ini mengembalikan objek RV "beku" yang menahan parameter yang diberikan tetap

Bagaimana Anda menemukan distribusi binomial?

Distribusi binomial dihitung dengan mengalikan peluang berhasil dipangkatkan dengan jumlah keberhasilan dan peluang gagal dipangkatkan selisih jumlah keberhasilan dengan jumlah percobaan

Apa itu binom dengan Python?

fungsi pmf adalah bagian dari pustaka SciPy Python dan digunakan untuk memodelkan eksperimen probabilistik dengan bantuan distribusi binomial .

Bagaimana Anda menemukan distribusi probabilitas dengan Python?

Distribusi Binomial dengan Python . using scipy. binom modul statistik. rvs() metode yang mengambil $n$ (jumlah percobaan) dan $p$ (probabilitas keberhasilan) sebagai parameter bentuk . Untuk menggeser distribusi gunakan parameter loc.

Bagaimana Anda menjalankan tes binomial dengan Python?

Dengan Python, kita bisa melakukan tes binomial menggunakan fungsi binom_test() dari scipy. perpustakaan statistik, yang menggunakan sintaks berikut. .
binom_test(x, n=Tidak ada, p=0. 5, alternatif='dua sisi')
Contoh 1. Kami melempar dadu bersisi 6 sebanyak 24 kali dan dadu tersebut mendarat tepat di angka “3” sebanyak 6 kali