Nous simulons cette fois-ci des données dans un modèle de régression. Nous simulons donc \[ (X_1,Y_1),...,(X_n,Y_n)\sim_{i.i.d.}(X,Y) \] où \(X\sim\mathcal U([0,1])\), \[ Y = g(X)+\varepsilon, \] avec \(g:\mathbb R\to\mathbb R\) une fonction et \(\varepsilon\sim\mathcal N(0,\sigma^2)\).
Prenons dans un premier temps \(g(x)=e^{|x-0.5|}\) et \(\sigma^2=0.01\).
n = 500
sigma2 = 0.01
epsilon = rnorm(n,0,sqrt(sigma2))
X = runif(n,0,1)
Y = exp(abs(X-0.5))+epsilon
plot(X,Y,pch=3)
npreg()
du package
np
. Installer et charger d’abord le package np
puis regarder l’aide de la fonction npreg()
. Puis, à l’aide
de la fonction npreg()
, donner un estimateur de la fonction
de régression \(g\).library(np)
bw = npregbw(Y~X)
ghat = npreg(bw)
plot(ghat)
x = seq(0,1,length.out=100)
points(x,exp(abs(x-0.5)),type='l',col='darkgreen')
On reprend les mêmes données que précedemment et on choisit la base de Fourier \[ \varphi_1(t) = 1, \varphi_{2j}(t)=\sqrt 2\cos(2\pi j t), \varphi_{2j+1}(t)=\sqrt 2\sin(2\pi jt). \] Calculer la matrice de Gram de dimension \(D_{\max}=201\) associée.
Calculer le vecteur \(\widehat b = (\frac1n\sum_{i=1}^nY_i\varphi_j(X_i))_{j=1,...,D_{mmax}}^t\) et en déduire les coefficients de l’estimateur par projection sur la base de Fourier à \(D_{\max}\) élements.
Reconstruire et tracer l’estimateur obtenu. Comparer avec la vraie fonction \(g\). Que pensez-vous de la qualité de l’estimation ?
Représenter \(\widehat g_m\) pour différentes valeurs de \(m\).
Reprendre l’étude en changeant la fonction \(g\),la taille \(n\) de l’échantillon, la variance du bruit \(\sigma^2\),…
Nous travaillons que le jeu de données cps71
inclu dans
la librairie np
. Les données se présentent sous la forme
d’un tableau contenant deux colonnes : - le log du salaire, qui sera
notre variable d’intérêt \(Y\), - l’âge
qui sera notre covariable \(X\).
Représenter les données et estimer la fonction de régression.
Faire de même avec un estimateur par projection.
Faire la même étude avec les données Italy
.