2016-08-05 16 views
-3

Ich bin derzeit versucht, Stata Regression in R zu übersetzen und hier ist der ursprüngliche Code:Translating Stata Regression in R

char ethnicity[omit]8 
char cid[omit]3 
xi: reg nationalism i.cid ib(8).ethnicity male age religious education income rural_now rural_prev killed [pw=stdwt] if warcountry ==1, cl(cid) 

und hier ist das, was ich bisher haben in Bezug auf die es in R

übersetzen
lm(nationalism ~ cid + ethnicity +male+ age+ religious+ education+ income+ rural_now+ rural_prev+ killed, data=tab5data) 

Meine Frage ist, wie mache ich den ersten Teil des Stata-Codes (char ethnicity[omit]8), weil ich weiß, dass es die Referenzgruppe ist, aber ich bin mir nicht sicher, wie das in R zu tun. Muss ich alle diese Gruppen entfernen Originaldatensatz oder muss ich diese Gruppen in einer separaten Regression alle ausführen zusammen? Was genau bedeutet die ib(8)?

+3

In Stata, Sie verwenden Sie nicht die 'xi' Präfix mehr. Das ist wahr seit Stata 10 oder 11. Sie haben eindeutig eine neuere Version von Stata, da Sie die 'ib().' -Syntax verwenden. Sehen Sie sich für Ihre Stata-Frage 'help fvvarlist' an. Für Ihre R Frage werfen Sie einen Blick auf "Faktor". – lmo

Antwort

1

Sie relevel() in R. verwenden Der folgende Code verwendet eine vom Benutzer geschriebenen Befehl rsource R aus Stata ausführen, um die Gleichwertigkeit zu zeigen:

. sysuse auto, clear 
(1978 Automobile Data) 

. saveold auto, version(12) replace 
(saving in Stata 12 format, which can be read by Stata 11 or 12) 
file auto.dta saved 

. 
. rsource, terminator(XXX) 
Assumed R program path: "/usr/local/bin/R" 

Beginning of R output 
>   library("foreign") 
>   mydata<-read.dta("~/Desktop/auto.dta") 
>   mydata$rep78 <- relevel(as.factor(mydata$rep78), ref = 4) 
>   m1<-lm(price ~ rep78,data = mydata) 
>   summary(m1) 

Call: 
lm(formula = price ~ rep78, data = mydata) 

Residuals: 
    Min  1Q Median  3Q  Max 
-3138.2 -1925.2 -1181.5 369.5 9476.8 

Coefficients: 
      Estimate Std. Error t value Pr(>|t|)  
(Intercept) 6071.5  702.4 8.643 2.38e-12 *** 
rep781  -1507.0  2221.3 -0.678 0.500  
rep782  -103.9  1266.4 -0.082 0.935  
rep783   357.7  888.5 0.403 0.689  
rep785  -158.5  1140.6 -0.139 0.890  
--- 
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1 

Residual standard error: 2980 on 64 degrees of freedom 
    (5 observations deleted due to missingness) 
Multiple R-squared: 0.01449, Adjusted R-squared: -0.0471 
F-statistic: 0.2353 on 4 and 64 DF, p-value: 0.9174 

> 
End of R output 

. 
. /* Old Way */ 
. char rep78[omit]4 

. xi: reg price i.rep78 
i.rep78   _Irep78_1-5   (naturally coded; _Irep78_4 omitted) 

     Source |  SS   df  MS  Number of obs =  69 
-------------+---------------------------------- F(4, 64)  =  0.24 
     Model | 8360542.63   4 2090135.66 Prob > F  = 0.9174 
    Residual | 568436416  64  8881819 R-squared  = 0.0145 
-------------+---------------------------------- Adj R-squared = -0.0471 
     Total | 576796959  68 8482308.22 Root MSE  = 2980.2 

------------------------------------------------------------------------------ 
     price |  Coef. Std. Err.  t P>|t|  [95% Conf. Interval] 
-------------+---------------------------------------------------------------- 
    _Irep78_1 |  -1507 2221.338 -0.68 0.500 -5944.633 2930.633 
    _Irep78_2 | -103.875 1266.358 -0.08 0.935 -2633.715 2425.965 
    _Irep78_3 | 357.7333 888.5353  0.40 0.689  -1417.32 2132.787 
    _Irep78_5 |  -158.5 1140.558 -0.14 0.890 -2437.026 2120.026 
     _cons |  6071.5 702.4489  8.64 0.000  4668.197 7474.803 
------------------------------------------------------------------------------ 

. 
. /* Post-Stata 11 Way */ 
. reg price ib4.rep78 

     Source |  SS   df  MS  Number of obs =  69 
-------------+---------------------------------- F(4, 64)  =  0.24 
     Model | 8360542.63   4 2090135.66 Prob > F  = 0.9174 
    Residual | 568436416  64  8881819 R-squared  = 0.0145 
-------------+---------------------------------- Adj R-squared = -0.0471 
     Total | 576796959  68 8482308.22 Root MSE  = 2980.2 

------------------------------------------------------------------------------ 
     price |  Coef. Std. Err.  t P>|t|  [95% Conf. Interval] 
-------------+---------------------------------------------------------------- 
     rep78 | 
      1 |  -1507 2221.338 -0.68 0.500 -5944.633 2930.633 
      2 | -103.875 1266.358 -0.08 0.935 -2633.715 2425.965 
      3 | 357.7333 888.5353  0.40 0.689  -1417.32 2132.787 
      5 |  -158.5 1140.558 -0.14 0.890 -2437.026 2120.026 
      | 
     _cons |  6071.5 702.4489  8.64 0.000  4668.197 7474.803 
------------------------------------------------------------------------------ 

. fvset base 4 rep78 

. reg price i.rep78 

     Source |  SS   df  MS  Number of obs =  69 
-------------+---------------------------------- F(4, 64)  =  0.24 
     Model | 8360542.63   4 2090135.66 Prob > F  = 0.9174 
    Residual | 568436416  64  8881819 R-squared  = 0.0145 
-------------+---------------------------------- Adj R-squared = -0.0471 
     Total | 576796959  68 8482308.22 Root MSE  = 2980.2 

------------------------------------------------------------------------------ 
     price |  Coef. Std. Err.  t P>|t|  [95% Conf. Interval] 
-------------+---------------------------------------------------------------- 
     rep78 | 
      1 |  -1507 2221.338 -0.68 0.500 -5944.633 2930.633 
      2 | -103.875 1266.358 -0.08 0.935 -2633.715 2425.965 
      3 | 357.7333 888.5353  0.40 0.689  -1417.32 2132.787 
      5 |  -158.5 1140.558 -0.14 0.890 -2437.026 2120.026 
      | 
     _cons |  6071.5 702.4489  8.64 0.000  4668.197 7474.803 
------------------------------------------------------------------------------