J'utilise rlm dans le package R MASS pour régresser un modèle linéaire multivarié. Cela fonctionne bien pour un certain nombre d'échantillons, mais j'obtiens des coefficients quasi nuls pour un modèle particulier:
Call: rlm(formula = Y ~ X1 + X2 + X3 + X4, data = mymodel, maxit = 50, na.action = na.omit)
Residuals:
       Min         1Q     Median         3Q        Max 
-7.981e+01 -6.022e-03 -1.696e-04  8.458e-03  7.706e+01 
Coefficients:
             Value    Std. Error t value 
(Intercept)    0.0002   0.0001     1.8418
X1             0.0004   0.0000    13.4478
X2            -0.0004   0.0000   -23.1100
X3            -0.0001   0.0002    -0.5511
X4             0.0006   0.0001     8.1489
Residual standard error: 0.01086 on 49052 degrees of freedom
  (83 observations deleted due to missingness)
A titre de comparaison, ce sont les coefficients calculés par lm ():
Call:
lm(formula = Y ~ X1 + X2 + X3 + X4, data = mymodel, na.action = na.omit)
Residuals:
    Min      1Q  Median      3Q     Max 
-76.784  -0.459   0.017   0.538  78.665 
Coefficients:
              Estimate Std. Error t value Pr(>|t|)    
(Intercept)  -0.016633   0.011622  -1.431    0.152    
X1            0.046897   0.004172  11.240  < 2e-16 ***
X2           -0.054944   0.002184 -25.155  < 2e-16 ***
X3            0.022627   0.019496   1.161    0.246    
X4            0.051336   0.009952   5.159  2.5e-07 ***
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 
Residual standard error: 2.574 on 49052 degrees of freedom
  (83 observations deleted due to missingness)
Multiple R-squared: 0.0182, Adjusted R-squared: 0.01812 
F-statistic: 227.3 on 4 and 49052 DF,  p-value: < 2.2e-16 
L'intrigue lm ne montre aucune valeur aberrante particulièrement élevée, telle que mesurée par la distance de Cook:

ÉDITER
Pour référence et après confirmation des résultats sur la base de la réponse fournie par Macro, la commande R pour définir le paramètre de réglage k, dans l'estimateur Huber est ( k=100dans ce cas):
rlm(y ~ x, psi = psi.huber, k = 100)
          
rlmfonction de pondération rejette presque toutes les observations. Êtes-vous sûr que c'est le même Y dans les deux régressions? (Juste vérification ...) Essayezmethod="MM"votrerlmappel, puis essayez (si cela échoue)psi=psi.huber(k=2.5)(2.5 est arbitraire, juste plus grand que le 1.345 par défaut) qui répartit lalmrégion semblable à la fonction de poids.