Bonjour, je suis nouveau sur le forum (et néophyte de R) et j'ai besoin d'aide concernant un DM que je suis censé rendre dans 1 mois (on ne peut pas me reprocher de ne pas m'y être pris à l'avance en tout cas )
Le principe est simple en apparence : on nous pose un premier modèle du type Yi = β0 + β1 · Xi + β2 · Zi + ui ,
où β0 = 0.75, β1 = 0.50 et β2 = 0.25. On imagine qu'on pense pouvoir estimer β1 sans biais par le sous-modèle suivant : Yi = b0 + b1 · Xi + vi
Je dois écrire un code R qui montre que :
1. Quand Xi et Zi sont dé-corrélés, l'estimateur des moindres carrés ordinaires pour b1 est non biaisé et convergent.
2. Quand Xi et Zi sont positivement corrélés, l'estimateur des moindres carrés ordinaires pour b1 est biaisé vers le haut et divergent
3. Quand Xi et Zi sont négativement corrélés, l'estimateur des moindres carrés pour b1 est biaisé vers le bas et divergent
Par "montrer" on entend obtenir une distribution de l'estimateur des moindre carrés pour b1, calculer les statistiques pertinentes et tracer un graphique dans l'espace approprié
Voici où mon travail m'a mené jusqu'ici :
- je sais que, pour être dans une situation de variable aléatoire omise, X doit être corrélé avec la variable omise et la variable omise doit pouvoir expliquer Y
- j'ai trouvé une façon de générer des simulations d'expériences de Monte Carlo par le programme suivant :
Voici le problème que je rencontre pour compléter le programme : je ne comprends pas la logique de l'exercice, parce que je suis supposé prendre en compte des cas généraux et des conditions sur des variables (donc des commandes du type if/then que j'ai déjà eu l'occasion d'utiliser sur Scilab me semblent appropriées, j'ai trouvé qu'on utilisait if/else sur R, mais impossible d'aller plus loin et de savoir quoi y mettre dedans). Mais avec la commande que je viens de vous montrer, on ne prend pas en compte de cas généraux mais un cas spécifique (certes généré aléatoirement, c'est le principe de la méthode de Monte Carlo) qui donne des résultats spécifiques... Je ne vois pas en quoi Xi et Zi peuvent varier dans une simulation de Monte Carlo qui donne des résultats figés...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 set.seed(1) n<-X; r<-X b0<-X;b1<-X;su<-X b0hat<-numeric(r) b1hat<-numeric(r) x1<-rnorm(n,0,X) for (j in 1:r) { print(j) u<-rnorm(n,0,su) y<-b0+b1*x1+u bhat<-coefficients(lm(y~x1)) b0hat[j]<-bhat["(Intercept)"] b1hat[j]<-bhat["x1"]
Merci d'avance pour votre aide. Je demande surtout à comprendre, davantage qu'à avoir les solutions au DM sans que je ne comprenne rien à ce qui se passe. Je n'ai jamais utilisé R, mais il faut que j'apprenne alors je vous en appelle à l'aide !
Partager