Menu
CoddyTech

Atrasos de Trem

Parte da seção Estatística para ML do Journey de Machine Learning da Coddy. Lição 61 de 64.

Duas linhas de trens suburbanos, Maple e Birch, compartilham uma estação. Durante 24 dias, foram registrados os atrasos dos trens de horário de pico de cada linha, em trains.csv:

Diagramas de caixa dos atrasos das duas linhas: a caixa de Maple fica em torno de 15 minutos, com um ponto em 91 marcado como falha de sinalização e um ponto baixo em 4; a caixa de Birch fica mais abaixo, em torno de 11, com pontos em 63 e 74 marcados como falhas de sinalização

Três falhas de sinal atrasaram trens por uma hora ou mais: algo real, mas grande o bastante para distorcer qualquer média.

O gerente pergunta: Maple está realmente atrasado ou a diferença pode ser acaso? Controle os valores extremos e depois deixe a aleatorização decidir.

challenge icon

Desafio

Difícil

O programa lê o fator dos limites k; 1.5 é a regra do box plot.

  1. Defina os limites para todos os atrasos em Q1 - k * IQR e Q3 + k * IQR, conte os valores atípicos e, em seguida, limite cada atraso com np.clip.
  2. Imprima a média dos atrasos limitados de cada linha e a diferença, Maple menos Birch.
  3. Embaralhe 2000 vezes: junte os atrasos limitados de Maple e depois os de Birch, uma rng.permutation por rodada, e considere os primeiros 24 como Maple fictício.
  4. Imprima o valor-p, ignorando o sinal, e a conclusão: unlikely to be chance abaixo de 0.05; caso contrário, could be chance.

Arredonde para 2 casas decimais e o valor-p para 3. Para k = 2:

Fences: 0.25 to 26.5 (3 outliers)
Maple mean: 15.27
Birch mean: 12.21
Difference: 3.06
p-value: 0.03
Verdict: unlikely to be chance

A conclusão se mantém para um k mais rigoroso ou mais flexível?

Experimente você mesmo

import numpy as np
import pandas as pd

k = float(input())
df = pd.read_csv("trains.csv")
delays = df["delay_min"]

# Não altere a linha abaixo
rng = np.random.default_rng(5)

# 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 Estatística para ML

Pratique por conta própria: Compilador de Python online