Generatoare de numere aleatoare și statistici hacker

Gândire statistică în Python (Partea 1)

Justin Bois

Teaching Professor at the California Institute of Technology

Statistici hacker

  • Utilizează măsurători simulate repetate pentru a calcula probabilități.
Gândire statistică în Python (Partea 1)

  ch3-2.004.png

1 Imagine: autor necunoscut
Gândire statistică în Python (Partea 1)

ch3-2.005.png

1 Imagine: Heritage Auction
Gândire statistică în Python (Partea 1)

Simularea aruncărilor de monedă

ch3-2.010.png

Gândire statistică în Python (Partea 1)

Experimente Bernoulli

  • Un experiment cu două rezultate posibile: „succes" (True) și „eșec" (False).
Gândire statistică în Python (Partea 1)

Modulul np.random

import numpy as np
rng = np.random.default_rng()

rng
Generator(PCG64) at 0x7F9433D38120
Gândire statistică în Python (Partea 1)

Semința pentru numere aleatoare

  • Număr întreg introdus în algoritmul de generare a numerelor aleatoare
  • Specificați semința manual doar dacă aveți nevoie de reproductibilitate
  • Se specifică prin rng = np.random.default_rng(seed)
Gândire statistică în Python (Partea 1)

Simularea a 4 aruncări de monedă

rng = np.random.default_rng(42)

random_numbers = rng.random(size=4)
random_numbers
array([0.77395605, 0.43887844, 0.85859792, 0.69736803])
heads = random_numbers < 0.5
heads
array([False,  True, False, False])
np.sum(heads)
1
Gândire statistică în Python (Partea 1)

Simularea a 4 aruncări de monedă

n_all_heads = 0  # Initialize number of 4-heads trials
for _ in range(10000):
     heads = np.random.random(size=4) < 0.5
     n_heads = np.sum(heads)
     if n_heads == 4:
         n_all_heads += 1

n_all_heads / 10000
0.0607
Gândire statistică în Python (Partea 1)

Probabilități prin statistici hacker

  • Stabiliți cum să simulați datele
  • Simulați de foarte multe ori
  • Probabilitatea este aproximativ fracția din încercări cu rezultatul dorit
Gândire statistică în Python (Partea 1)

Să exersăm!

Gândire statistică în Python (Partea 1)

Preparing Video For Download...