2016-01-04 4 views
0

Я создал набор данных, и я пытаюсь заставить Stargazer напечатать его, как есть, но для последнего столбца он не будет печатать ничего, кроме нулей.Звездные печатные нули вместо моих данных

my_object<-structure(list(labels_for_t_test = structure(c(4L, 3L, 2L, 1L), 
       .Label = c("% who report excessive drinking", "% with a BMI 30 or above", "Mentally unhealthy days per month", 
          "Physically unhealthy days per month"), class = "factor"), 
          `estimate.mean of x` = c(3.81651019006183,3.45526222746022, 30.4518625528841, 14.7764967356577), 
          `estimate.mean of y` = c(3.69675958188153, 3.5731520223152, 28.8823529411765, 15.6045118082481), 
          statistic.t = c(6.41504498947883, -6.74576716155339, 17.0617198661627, -8.02284265433504), 
          p.value = c(1.48603650334571e-10, 1.62589843848316e-11, 3.19751229848406e-63, 1.19147131984837e-15)), 
          .Names = c("labels_for_t_test", "estimate.mean of x", "estimate.mean of y", "statistic.t", "p.value"), 
          row.names = c("Physically.Unhealthy.Days", "Mentally.Unhealthy.Days", "X..Obese", "X..Excessive.Drinking"), class = "data.frame") 
                                                   -6.74576716155339, 17.0617198661627, -8.02284265433504), p.value = c(1.48603650334571e-10, 
stargazer(my_object, title="Results of Welch Two Sample t-tests Comparing Counties with 10 or More Gun Deaths and Counties with Fewer", 
     digits=15, digits.extra= 100, type="html", rownames = FALSE, 
     out="t tests test.html", summary = FALSE, 
     covariate.labels = c("Variable","--mean for >=10 gun deaths--", "--mean for <10--", "t-statistic", "p-value")) 

Я запускаю это с digits=100 и он все еще что-нибудь, а в столбце р-значение одного нуля не показывают. В идеале я хотел бы напечатать p-значения в научной нотации, но если он даже не распознает ценности, это, очевидно, большая проблема. Я в тупике, и я очень признателен за любую помощь!

+0

хорошо ... это потому, что ваши значения p в основном равны 0. – MichaelChirico

+0

что у кого есть против печати 0 для p-значений, которые от 0 до 10 цифр? – MichaelChirico

ответ

1

Как я уже говорил, я не могу думать о розетке, которая на вас хмурится, просто говоря p = 0, когда ваше наибольшее значение p составляет 1,48 * 10^-10.

Но если вы настаиваете на печать в научной нотации, просто преобразовать этот столбец перед переходом к Stargazer:

my_object$p.value <- format(my_object$p.value, width = 4, digits = 3) 

(не стесняйтесь играть с параметрами ...)

Тогда stargazer должен работать как и ожидалось.