Purtest对象-如何将Output保存为tex文件?

时间:2018-12-04 22:08:57

标签: r latex stargazer plm

我想知道是否有一种方法可以保存purtest-输出为LaTeX 文件?

正如您在示例代码中看到的那样,我已经尝试通过stargazer生成它。但是,stargazer函数不支持purtest-class

library(plm)
library(stargazer)

dat <- data.frame(entity = c(rep("a",10),rep("b",10)),year = 
rep(1970:1979,2),value = rnorm(20))
pdat <- pdata.frame(dat,index = c("entity","year"))

res <- purtest(object = pdat$value,test = "ips",exo = "intercept",pmax = 1)

stargazer(summary(res),type = "latex")

我知道可以手动提取值,将它们存储在data.frame中,并最终通过print.xtable将data.frame保存为LaTeX文件。 但是,也许有任何巧妙的方法可以解决该问题。

1 个答案:

答案 0 :(得分:0)

Stargazer库有很多检查约束了可以使用的类。 不包括“最高级”类,但是由于Stargazer支持导出“矩阵”类,因此可以克服这些限制。例如:

    # the problem
    library(plm)
    library(stargazer)

    dat <- data.frame(entity = c(rep("a",10),rep("b",10)),year = 
                        rep(1970:1979,2),value = rnorm(20))
    pdat <- pdata.frame(dat,index = c("entity","year"))

    res <- purtest(object = pdat$value,test = "ips",exo = "intercept",pmax = 1)


    # One solution: extract the parametars and place them in the matrix:
    a = unlist(res$idres[[1]])
    b = unlist(res$idres[[2]])
    all =  rbind(a, b)
    class(all) <- c("matrix")

    stargazer(all,type = "latex",align = T) 
    # need to align , else you get strange double dollar signs