RMarkdown中中介函数的输出

RMarkdown中中介函数的输出,r,r-markdown,R,R Markdown,我试图将中介包中的mediate函数的输出包含在我的RMarkdown(PDF)文档中。使用summary将RMarkdown转换为PDF文档时,它会给出一个包含自举分析结果的表格,但是: 我不喜欢输出的外观,我希望有一个更闪亮的桌子 我无法用标题标记此表,并且它不包含在RMarkdown的自动nummeration中(因此,我无法在文本中引用它) 我尝试将kable或xtabs与'mediate'函数的输出一起使用,但由于这两个函数都不接受输出的类(“summary.mediate”“medi

我试图将中介包中的
mediate
函数的输出包含在我的RMarkdown(PDF)文档中。使用
summary
将RMarkdown转换为PDF文档时,它会给出一个包含自举分析结果的表格,但是:

  • 我不喜欢输出的外观,我希望有一个更闪亮的桌子
  • 我无法用标题标记此表,并且它不包含在RMarkdown的自动nummeration中(因此,我无法在文本中引用它)
  • 我尝试将
    kable
    xtabs
    与'mediate'函数的输出一起使用,但由于这两个函数都不接受输出的类(“summary.mediate”“mediate”),因此无法工作

    这就是我的RMarkdown文档中的代码块的运行方式:

    ```{r med.y1.z6.z7.c, echo = F, comment = "", strip.white = T, fig.cap="test"}
    
    regDFM <- na.omit(as.data.frame(cbind(Y1, X1, Z1, Z6, Z7))) 
    regFIT1.C.medY <- lm(Y1 ~ X1+Z1+Z6+Z7+X1:Z1, data = regDFM)
    regFIT1.C.medM <- lm(Z7 ~ X1+Z1+Z6+X1:Z1, data = regDFM)
    fitMED <- mediation::mediate(regFIT1.C.medM, regFIT1.C.medY, 
                             boot = T, sims = 10, treat="Z6", mediator="Z7")
    summary(fitMED)
    
    ```
    
    ``{r med.y1.z6.z7.c,echo=F,comment=”“,strip.white=T,fig.cap=“test”}
    
    使用kable和mediate函数的元素,我最终创建了一个漂亮的RMarkdown>PDF输出

    首先,我使用mediate函数的相关元素创建了一个data.frame(被称为“元素”吗?你会怎么称呼它们?)。然后将data.frame传递给kable

    感谢@henrik_ibsen的提示

    这是我的密码:

    regDFM <- na.omit(as.data.frame(cbind(Y1, X1, Z1, Z6, Z7))) 
    regFIT1.C.medY <- lm(Y1 ~ X1+Z1+Z6+Z7+X1:Z1, data = regDFM)
    regFIT1.C.medM <- lm(Z7 ~ X1+Z1+Z6+X1:Z1, data = regDFM)
    fitMED <- mediation::mediate(regFIT1.C.medM, regFIT1.C.medY, 
                                 boot = T, sims = 10, treat="Z6", mediator="Z7")
    
    bt_effect <- c("Indirekter Effekt", "Direkter Effekt", "Gesamt Effekt", 
                   "Anteil direkter Effekt")
    bt_est <- c(fitMED$d1, fitMED$z1, fitMED$tau.coef, fitMED$n1)
    #bt_p <- format.pval(c(fitMED$d1.p, fitMED$z1.p, fitMED$tau.p, fitMED$n1.p))
    bt_p <- c(fitMED$d1.p, fitMED$z1.p, fitMED$tau.p, fitMED$n1.p)
    bt_stars <- c(stars.pval(fitMED$d1.p), stars.pval(fitMED$z1.p),
                  stars.pval(fitMED$tau.p), stars.pval(fitMED$n1.p))
    bt_DF <- data.frame(row.names = bt_effect, format(bt_est, digits = 2), 
                        format(bt_p, nsmall = 3), bt_stars)
    colnames(bt_DF) <- c("Koeffizienten", "p-Werte", "")
    
    kable(bt_DF, booktabs = T, align = "c",
          caption = "Bootstraping-Analyse für Mediation") %>%
          footnote(general = c("Simulationen: 1000", "Signifikanzniveaus: ∗ p<0.05; 
                                ∗∗ p<0.01; ∗∗∗ p<0.001"),
                   general_title = "Anmerkungen:")
    

    regDFM使用kable和mediate函数的元素,我最终创建了一个漂亮的RMarkdown>PDF输出

    首先,我使用mediate函数的相关元素创建了一个data.frame(被称为“元素”吗?你会怎么称呼它们?)。然后将data.frame传递给kable

    感谢@henrik_ibsen的提示

    这是我的密码:

    regDFM <- na.omit(as.data.frame(cbind(Y1, X1, Z1, Z6, Z7))) 
    regFIT1.C.medY <- lm(Y1 ~ X1+Z1+Z6+Z7+X1:Z1, data = regDFM)
    regFIT1.C.medM <- lm(Z7 ~ X1+Z1+Z6+X1:Z1, data = regDFM)
    fitMED <- mediation::mediate(regFIT1.C.medM, regFIT1.C.medY, 
                                 boot = T, sims = 10, treat="Z6", mediator="Z7")
    
    bt_effect <- c("Indirekter Effekt", "Direkter Effekt", "Gesamt Effekt", 
                   "Anteil direkter Effekt")
    bt_est <- c(fitMED$d1, fitMED$z1, fitMED$tau.coef, fitMED$n1)
    #bt_p <- format.pval(c(fitMED$d1.p, fitMED$z1.p, fitMED$tau.p, fitMED$n1.p))
    bt_p <- c(fitMED$d1.p, fitMED$z1.p, fitMED$tau.p, fitMED$n1.p)
    bt_stars <- c(stars.pval(fitMED$d1.p), stars.pval(fitMED$z1.p),
                  stars.pval(fitMED$tau.p), stars.pval(fitMED$n1.p))
    bt_DF <- data.frame(row.names = bt_effect, format(bt_est, digits = 2), 
                        format(bt_p, nsmall = 3), bt_stars)
    colnames(bt_DF) <- c("Koeffizienten", "p-Werte", "")
    
    kable(bt_DF, booktabs = T, align = "c",
          caption = "Bootstraping-Analyse für Mediation") %>%
          footnote(general = c("Simulationen: 1000", "Signifikanzniveaus: ∗ p<0.05; 
                                ∗∗ p<0.01; ∗∗∗ p<0.001"),
                   general_title = "Anmerkungen:")
    

    regDFM您可以查看
    summary.mediate
    的源代码,并创建自己的summary函数,该函数只将相关信息输出为
    data.frame
    。看一看谢谢!这听起来是个好主意,很有趣,但很费时。如果我有时间,我会试试。你可以查看
    摘要的源代码。调解
    并创建自己的摘要函数,该函数只将相关信息作为
    数据.frame
    输出。看一看谢谢!这听起来是个好主意,很有趣,但很费时。如果我有时间,我会试试的。