การสร้างตัวแปรสุ่มแบบไม่ต่อเนื่อง

Monte Carlo Simulations ใน Python

Izzy Weber

Curriculum Manager, DataCamp

การ import ที่จำเป็น

import scipy.stats as st

import seaborn as sns import pandas as pd import numpy as np import matplotlib.pyplot as plt
Monte Carlo Simulations ใน Python

การแจกแจงสม่ำเสมอแบบไม่ต่อเนื่อง

ฟังก์ชันมวลความน่าจะเป็น (PMF) เชิงทฤษฎี: ฟังก์ชันมวลความน่าจะเป็นเชิงทฤษฎีสำหรับการแจกแจงสม่ำเสมอแบบไม่ต่อเนื่อง

Monte Carlo Simulations ใน Python

การสุ่มตัวอย่างจากการแจกแจงสม่ำเสมอแบบไม่ต่อเนื่อง

low = 3 
high = 21
samples = st.randint.rvs(low, high, size=1000)
samples_dict = {"nums":samples}
sns.histplot(x="nums", data=samples_dict, bins=6, binwidth=0.3)

กราฟผลลัพธ์การสุ่มตัวอย่างจากการแจกแจงสม่ำเสมอแบบไม่ต่อเนื่อง

Monte Carlo Simulations ใน Python

การแจกแจงเรขาคณิต

การแจกแจงความน่าจะเป็นของจำนวนครั้งที่ต้องทดลอง $X$ เพื่อให้ได้ผลสำเร็จหนึ่งครั้ง โดยที่ความน่าจะเป็นของความสำเร็จคือ $p$

ฟังก์ชันมวลความน่าจะเป็น, p = 0.5 ฟังก์ชันมวลความน่าจะเป็นเชิงทฤษฎีสำหรับการแจกแจงเรขาคณิต เมื่อ p = 0.5

Monte Carlo Simulations ใน Python

การแจกแจงเรขาคณิต

ฟังก์ชันมวลความน่าจะเป็น, p = 0.3 ฟังก์ชันมวลความน่าจะเป็นเชิงทฤษฎีสำหรับการแจกแจงเรขาคณิต เมื่อ p = 0.3

Monte Carlo Simulations ใน Python

การสุ่มตัวอย่างจากการแจกแจงเรขาคณิต

p = 0.2
samples = st.geom.rvs(p, size=1000)
samples_dict = {"nums":samples}
sns.histplot(x="nums", data=samples_dict)

กราฟผลลัพธ์การสุ่มตัวอย่างจากการแจกแจงเรขาคณิต

Monte Carlo Simulations ใน Python

การแจกแจงความน่าจะเป็นแบบไม่ต่อเนื่องอื่น ๆ

  • Poisson (scipy.stats.poisson)
    • แสดงความน่าจะเป็นที่จะเกิดเหตุการณ์จำนวนหนึ่งในช่วงเวลาหรือพื้นที่คงที่
  • Binomial (scipy.stats.binom)
    • แสดงความน่าจะเป็นของจำนวนครั้งที่สำเร็จในการทดลองอิสระ $n$ ครั้ง
  • และอื่น ๆ อีกมาก!
1 https://docs.scipy.org/doc/scipy/reference/stats.html#discrete-distributions
Monte Carlo Simulations ใน Python

มาฝึกกันเถอะ!

Monte Carlo Simulations ใน Python

Preparing Video For Download...