در این کد stats.binom.rvs(size=1000 ,n=100 ,p=0.2)یعنی به اضای هر عضو از size 100 بار روش تست شده..؟وچجور مقادیرش محاسبه شده..!!
بله، بیایید کد را بررسی کنیم:
stats.binom.rvs(size=1000, n=100, p=0.2)
مفهوم هر پارامتر
این کد ۱۰۰۰ مقدار تصادفی تولید میکند که هر مقدار یک متغیر تصادفی باینومیال است، یعنی نتیجهی ۱۰۰ بار اجرای یک آزمایش برنولی با احتمال موفقیت ۰.۲.
هر مقدار تولید شده، تعداد موفقیتها در ۱۰۰ آزمایش برنولی است. برای هر مقدار:
مثال عددی:فرض کنید در یک اجرای کد، خروجی اولین مقدار ۲۳ شد. این یعنی در اولین نمونه (از ۱۰۰۰ نمونه)، از ۱۰۰ آزمایش برنولی، ۲۳ مورد موفق بوده است.
خروجی یک آرایه numpy با ۱۰۰۰ مقدار است که هر مقدار تعداد موفقیتهای یک اجرای ۱۰۰ تایی از آزمایش برنولی را نشان میدهد.
میتوان یک هیستوگرام رسم کرد:
import matplotlib.pyplot as plt import scipy.stats as stats data = stats.binom.rvs(size=1000, n=100, p=0.2) plt.hist(data, bins=30, edgecolor='black', alpha=0.7) plt.xlabel("تعداد موفقیتها در 100 آزمایش") plt.ylabel("فراوانی") plt.title("توزیع نمونهای از توزیع باینومیال (n=100, p=0.2)") plt.show()
این نمودار نشان میدهد که دادههای تولید شده حول میانگین np = 100 × 0.2 = 20 توزیع شدهاند.