ÎncepețiÎncepe gratuit

Regresia liniară a timpului mediu pe segment

Vom presupune că înotătorii încetinesc în mod liniar pe parcursul probei de 800 m. Încetinirea pe segment reprezintă astfel panta graficului timp mediu pe segment față de numărul segmentului. Efectuează o regresie liniară pentru a estima încetinirea pe segment și calculează un interval de încredere de 95% prin bootstrap pe perechi. Afișează și graficul dreptei de regresie.

Notă: Putem calcula bare de eroare pentru timpii medii pe segment și le putem include în analiza de regresie, dar nu le vom lua în considerare aici, deoarece acest lucru depășește scopul cursului.

Acest exercițiu face parte din cursul

Studii de caz în gândirea statistică

Vezi cursul

Instrucțiuni pentru exercițiu

  • Folosește np.polyfit() pentru a efectua o regresie liniară și a obține încetinirea pe segment. Variabilele split_number și mean_splits sunt deja disponibile în spațiul tău de lucru. Stochează panta și, respectiv, intersecția în slowdown și split_3.
  • Folosește dcst.draw_bs_pairs_linreg() pentru a calcula 10.000 de replici bootstrap pe perechi ale încetinirii pe segment. Stochează rezultatul în bs_reps. Replicile bootstrap ale intersecției nu sunt relevante pentru această analiză, așa că le poți stoca în variabila de ignorat _.
  • Calculează intervalul de încredere de 95% al încetinirii pe segment.
  • Reprezintă grafic numărul segmentului (split_number) față de timpul mediu pe segment (mean_splits) sub formă de puncte, împreună cu dreapta de regresie.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Perform regression
____, ____ = ____

# Compute pairs bootstrap
bs_reps, _ = ____

# Compute confidence interval
conf_int = ____

# Plot the data with regressions line
_ = ____(____, ____, marker='.', linestyle='none')
_ = ____(____, ____ * ____ + ____, '-')

# Label axes and show plot
_ = plt.xlabel('split number')
_ = plt.ylabel('split time (s)')
plt.show()

# Print the slowdown per split
print("""
mean slowdown: {0:.3f} sec./split
95% conf int of mean slowdown: [{1:.3f}, {2:.3f}] sec./split""".format(
    slowdown, *conf_int))
Editează și rulează codul