簡體   English   中英

將R輸出導出到Latex-Stargazer中以支持未支持的對象

[英]Exporting R output into Latex - Stargazer for non suported objects

我使用frontier包估算R中的模型,需要將結果導出到Latex中。 輸出是非常相似的lm回歸[見下文],但frontier對象不支持stargazer將它們導出到Latex代碼。 有什么辦法可以解決此問題? 任何想法? *我也正在研究texregapsrtable ,到目前為止沒有成功。

frontier回歸輸出示例:

在此處輸入圖片說明

我對讓stargazer輸出不受支持的模型了解不多,但是您可以使用broom軟件包中的tidy方法將基本輸出轉換為與xtableknitr::kablepixiedust兼容的格式

library(broom)
library(frontier)

# example included in FRONTIER 4.1 (cross-section data)
data( front41Data )

# Cobb-Douglas production frontier
cobbDouglas <- sfa( log( output ) ~ log( capital ) + log( labour ),
                    data = front41Data )
tidy(cobbDouglas, conf.int = TRUE)
broom:::tidy.lm(cobbDouglas)

          term  estimate  std.error statistic      p.value
1  (Intercept) 0.5616193 0.20261685  2.771829 5.574228e-03
2 log(capital) 0.2811022 0.04764337  5.900132 3.632107e-09
3  log(labour) 0.5364798 0.04525156 11.855499 2.015196e-32
4      sigmaSq 0.2170003 0.06390907  3.395454 6.851493e-04
5        gamma 0.7972069 0.13642438  5.843581 5.109042e-09

對於匯總統計信息,您將需要編寫自己的glance方法,因為frontier對象與broom:::glance.lm不兼容。

但我認為最終的結果是,如果您想模仿觀星者的輸出,則必須做一些預處理工作。

而且由於我今天有雄心壯志,因此這是一種處理邊界對象的tidy方法。

tidy.frontier <- function(x, conf.int = FALSE, conf.level = .95,
                          exponentiate = FALSE, quick = FALSE, ...)
{
  broom:::tidy.lm(x, conf.int = conf.int, conf.level = conf.level,
                  exponentiate = exponentiate, quick = quick, ...)
}


# example included in FRONTIER 4.1 (cross-section data)
data( front41Data )

# Cobb-Douglas production frontier
cobbDouglas <- sfa( log( output ) ~ log( capital ) + log( labour ),
                    data = front41Data )
tidy(cobbDouglas, conf.int = TRUE)

暫無
暫無

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

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