Random Numbers

Intermediate Python

Hugo Bowne-Anderson

Data Scientist at DataCamp

Intermediate Python

Intermediate Python

Intermediate Python

Intermediate Python

Intermediate Python

  • Can't go below step 0
  • 0.1 % chance of falling down the stairs
  • Bet: you'll reach step 60
Intermediate Python

How to solve?

  • Analytical
  • Simulate the process
    • Hacker statistics!
Intermediate Python

Random generators

import numpy as np
np.random.rand()      # Pseudo-random numbers
0.9535543896720104    # Mathematical formula
np.random.seed(123)    # Starting from a seed
np.random.rand()
0.6964691855978616
np.random.rand()
0.28613933495037946
Intermediate Python

Random generators

np.random.seed(123)
np.random.rand()
0.696469185597861    # Same seed: same random numbers!
np.random.rand()     # Ensures "reproducibility"
0.28613933495037946
Intermediate Python

Coin toss

game.py

import numpy as np

np.random.seed(123)
coin = np.random.randint(0,2) # Randomly generate 0 or 1
print(coin)
0
Intermediate Python

Coin toss

game.py

import numpy as np
np.random.seed(123)
coin = np.random.randint(0,2)  # Randomly generate 0 or 1
print(coin)

if coin == 0: print("heads")
else: print("tails")
0
heads
Intermediate Python

Let's practice!

Intermediate Python

Preparing Video For Download...