1. Učit se
  2. /
  3. Kurzy
  4. /
  5. Statistické simulace v Pythonu

Connected

cvičení

Bootstrapping v regresi

Podívejme se teď, jak bootstrapping funguje v kontextu regrese. Bootstrapping pomáhá odhadnout nejistotu u nestandardních odhadů. Vezměme si například statistiku \(R^{2}\) spojenou s regresí. Při obyčejné metodě nejmenších čtverců dostaneš konkrétní hodnotu \(R^{2}\), ale jak získat 95% interval spolehlivosti (CI) pro \(R^2\)?

Prohlédni si DataFrame df se závislou proměnnou \(y\) a dvěma nezávislými proměnnými \(X1\) a \(X2\) pomocí df.head(). Regresi jsme už předem natrénovali pomocí statsmodels (sm) takto:

reg_fit = sm.OLS(df['y'], df.iloc[:,1:]).fit()

Výsledky si prohlédni pomocí reg_fit.summary() — zjistíš, že \(R^{2}=0.3504\). Teď pomocí bootstrappingu vypočítej 95% CI.

Pokyny

100 XP
  • Vytáhni bootstrap vzorek z původního datasetu pomocí metody sample() pandas DataFrame. Počet řádků musí být stejný jako v původním DataFrame.
  • Natrénuj regresi podobně jako reg_fit() pomocí sm.OLS() a získej statistiku \(R^{2}\) pomocí parametru rsquared.
  • Přidej hodnotu \(R^{2}\) do seznamu rsquared_boot.
  • Vypočítej 95% CI pro rsquared_boot jako r_sq_95_ci pomocí np.percentile().