2017-09-15 32 views
2

我有一个有效存储回归结果的数据框,其中相关值作为列和变量作为行(每个存储在名)。它看起来是这样的:在R中生成HTML表格:Column.labels或dep.var.caption在stargazer中的数据框表中

a <- c(3, 0.5, 0.010, 4, 0.3, 0.271) 
b <- c(10, 0.9, 0.021, 8, 0.5, 0.063) 
temp <- data.frame(rbind(b, a)) 
colnames(temp) <- c("Coef", "SE", "p-value", "Coef", "SE", "p-value") 
rownames(temp) <- c("alpha", "bravo") 

使用stargazer,我想创建一个提供此信息,并允许我来标识的前三列作为结果处理1和第二三作为结果的HTML表治疗2.表将是这个样子:

table <- stargazer(temp, type="html", summary=F) 

我的问题是,我无法弄清楚如何添加这些标识符T1和T2。我首先尝试column.labelscolumn.separate一起使用,但后来才知道那些仅在使用stargazer作为实际回归输出而不是纯数据帧时才起作用。像dep.var.caption这样的东西实际上是更可取的(我喜欢把这个标识符和列标题分隔开的线),但我认为它也只适用于纯回归输出,即使如此,我仍然无法找到一种方法来分开每个跨度多列。

任何想法,我可以如何使这项工作,或找到解决办法?

回答

2

我现在不很了解夜光云,但强烈建议您使用kableExtra在R.与HTML /乳胶表格时

使用kableExtra解决方案:

生成示例数据:

a <- c(3, 0.5, 0.010, 4, 0.3, 0.271) 
b <- c(10, 0.9, 0.021, 8, 0.5, 0.063) 
temp <- data.frame(rbind(b, a)) 
colnames(temp) <- c("Coef", "SE", "p-value", "Coef", "SE", "p-value") 
temp 

    Coef SE p-value Coef SE p-value 
b 10 0.9 0.021 8 0.5 0.063 
a 3 0.5 0.010 4 0.3 0.271 

生成HTML表:

library(knitr) 
library(kableExtra) 
kable(temp, format = "html", 
     row.names = FALSE, 
     caption = "Way better than stargazer") %>% 
    kable_styling(bootstrap_options = "striped", 
        full_width = TRUE) %>% 
    add_header_above(c("alpha" = 3, "bravo" = 3)) 

enter image description here