2016-04-13 13 views
0

bir dilim regresyon modeli var rqpd. İşte Özü katsayıları ve miktarsal regresyondan t değerleri, aşağıdaki gibi

cf_10<- summary(rqpdfit)$coefficients[1:8,] 

ilk kuantil çıkışı: Ancak

       Value Std. Error  t value  Pr(>|t|)     
     (Intercept)[0.1] 14.4864410152 11.670505897 1.24128647 2.145773e-01 
    > x1[0.1]   -1.1081682804 1.230039754 -0.90092070 3.676881e-01 
    > x2[0.1]   0.5036482698 0.097472484 5.16708152 2.501200e-07 
    > x3[0.1]   -0.8077127317 0.282774725 -2.85638234 4.308473e-03 
    > x4[0.1]   0.0006560821 0.008695294 0.07545255 9.398587e-01 
    > x5[0.1]   -0.0102064486 0.043276674 -0.23584180 8.135683e-01 
    > x6[0.1]   -0.1081589250 0.061636404 -1.75478966 7.937665e-02 
    > x7[0.1]   -0.7891778648 0.251492587 -3.13797665 1.714334e-03 

, ben (anlamlılık yıldızlı mümkünse) matris içinde katsayıları ve t-değerleri ayıklamak nasıl bilmiyorum.

Teşekkür

cevap

0

Sen (isimsiz) paket stargazer ile çalışmalarını kullanıp kullanmadığınızı kontrol edebilirsiniz, ama aksi halde, yıldız elde otomatik olmayacaktır. Bu bilgiyi genellikle summary() kullanarak ayıklayabilirsiniz.

# coefficients and t-values in matrix 
cf_10 <- summary(x)$coefficients[1:8,c(1,3)] 
# p-values 
cf_10.pVals <- summary(x)$coefficients[1:8,4] 

Gerçekten isterseniz, katsayılara yıldız yapıştırmak için bir algoritma uygulayabilirsiniz.

olasılıkla daha güzel bir yolu yoktur, ancak bu okumayı oldukça basit olmalıdır: Bu sahip olduğunuz bir vektör, coef1, tval1, coef2, tval2 ...

olmak için

# function to print stars 
starPrinter <- function(pVal) { 
    if(pVal < 0.01) return("***") 
    if(pVal < 0.05) return("**") 
    if(pVal < 0.1) return("*") 

    return("") 
} 

# a matrix, with digits rounded to 3rd decimal 
myTable <- round(cf_10, 3) 
# get stars and put tvalues in parentheses 
for(i in 1:nrow(myTable)) { 
    myTable[i, 1] <- paste0(myTable[i, 1], starPrinter(cf_10.pVals[i])) 
    myTable[i, 2] <- paste0("(", myTable[i, 2], ")") 
} 

myEstVector.cf_10 <- as.character(t(myTable)) 
daha sonra, yeni tabloya birden fazla sonuç birleştirebilirsiniz

: bunu yapmak o kadar

myNewTable <- cbind(myEstVector.cf_10, myEstVector.cf_25, myEstVector.cf_99) 
+0

Hayalci rqpd desteklemiyor Önemli olan yıldızlar sağlamaz. Bir algoritmanın nasıl oluşturulacağı hakkında bir fikrin var mı? – Demet

+0

Bunu yapmak için bazı kod eklendi. İdeal değil, ama umarım yardımcı olur. – lmo

+0

Teşekkürler! StarPrinter'ı düzenledim ve şimdi çalışıyor. Ancak, son satır işe yaramıyor (#get yıldızdan sonra.) – Demet