簡體   English   中英

在觀星者輸出中包含 vif 信息

[英]Include vif information in stargazer output

我有一個來自 lm 函數的輸出,我應用了來自car包的 vif 函數。 我想將 vif 包含在由 stargazer 包生成的回歸表中,但我無法添加額外的列。

這可能嗎? 我也願意接受有關使用其他軟件包的建議。

謝謝,如果您需要更多信息,請告訴我。

正如其他人所建議的那樣,使用 stargazer 自定義輸出的可能性是有限的。 一種方法是利用summary=FALSE選項,它只打印您插入的數據框。

library(stargazer)
library(car)
library(broom)
library(tidyverse)

#generate dummy data with correlated regressors
set.seed(123)
x <- runif(1000)
z <- x^0.5
y <-  x + z + rnorm(1000, sd=.05)
model <- lm(y ~ x + z)

# create a new tibble with vifs
vif(model) %>% tibble(.) %>% mutate(term = names(vif(model)) %>% rename('vif'='.') -> vifs

#merge summary stats of model with vifs
tidy_sum <- tidy(summary(model))
left_join(tidy_sum, vifs) -> summary_with_vif

stargazer(summary_with_vif, type='html', summary=FALSE) 

輸出如下所示:

 <table style="text-align:center"><tr><td colspan="7" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left"></td><td>term</td><td>estimate</td><td>std.error</td><td>statistic</td><td>p.value</td><td>vif</td></tr> <tr><td colspan="7" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">1</td><td>(Intercept)</td><td>0.0004</td><td>0.009</td><td>0.041</td><td>0.968</td><td></td></tr> <tr><td style="text-align:left">2</td><td>x</td><td>0.992</td><td>0.027</td><td>36.180</td><td>0</td><td>24.716</td></tr> <tr><td style="text-align:left">3</td><td>z</td><td>1.006</td><td>0.034</td><td>30.003</td><td>0</td><td>24.716</td></tr> <tr><td colspan="7" style="border-bottom: 1px solid black"></td></tr></table>

不幸的是,您需要重命名列,並自己選擇位數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM