Menu
CoddyTech

Números aleatórios

Parte da seção Dados e gráficos do Journey de Machine Learning da Coddy. Lição 18 de 60.

Simulações, dados embaralhados e modelos não treinados começam todos com números aleatórios. Essas 1.000 alturas fictícias foram criadas com uma linha:

Um histograma de 1.000 alturas aleatórias em forma de sino, mais alto em torno da média de 170 cm e diminuindo em direção a 140 e 200

O NumPy os gera a partir de um gerador, iniciado por uma semente:

rng = np.random.default_rng(42)
heights = rng.normal(170, 10, size=1000)
print(np.round(heights[:4], 1))
print(rng.integers(1, 7, size=5))
print(np.round(rng.random(3), 2))

Isto imprime:

[173.  159.6 177.5 179.4]
[2 4 3 3 5]
[0.44 0.13 0.09]

normal(mean, std, size) se concentra em torno da sua média. integers não inclui o limite final, assim como range. random fornece números decimais de 0 a 1.

A mesma semente gera os mesmos números em qualquer computador, para que qualquer pessoa possa repetir seu experimento. Cada sorteio faz o gerador avançar.

challenge icon

Desafio

Fácil

Uma loja simula uma semana que uma nova execução deve repetir.

  1. Crie rng_a a partir da semente e gere 7 contagens de clientes, de 20 a 60 inclusive, depois 7 valores de gastos com distribuição normal: média 15, desvio padrão 4.
  2. Gere as contagens novamente a partir de rng_b com a mesma semente e de rng_c com a semente mais 1.
  3. Imprima como abaixo: os gastos com 1 casa decimal e quantos dias b e c coincidem com a.

Para a semente 12:

Customers: [45 30 59 58 22 27 28]
Spend: [21.5 10.2 12.5  9.7 14.6 19.  14.9]
Same seed, days that match: 7
Seed + 1, days that match: 1

Experimente você mesmo

import numpy as np

seed = int(input())

# Escreva seu código abaixo
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Dados e gráficos

Pratique por conta própria: Compilador de Python online