【问题标题】:How to produce APA style statistical output in Sweave?如何在 Sweave 中生成 APA 样式的统计输出?
【发布时间】:2019-01-31 13:06:53
【问题描述】:

我正在尝试找到一种方法来整合 Sweave 中 apa R 包的统计输出。

我需要使用 ez 包进行统计分析(因为我需要类型 3 的平方和)。这与 Rmarkdown 完美配合,但我在 Sweave 中的输出格式存在问题。

\documentclass{article}
\begin{document}
\SweaveOpts{concordance=TRUE}

\section*{Results}
<<echo=FALSE, results=hide>>=
library(knitr)
library(ez)
library(apa)

subject<- c(1:40)
reward<- rep(c("p", "s", "p", "s", "s", "p", "s", "p", "s", "p"), 4)
class<- rep(c("ST", "GT", "ST", "GT", "GT", "ST", "GT", "ST", "GT", "ST"), 4)
value<- runif(40, min=0, max=5)
df<- data.frame(subject, reward, class, value)
df$subject<- as.factor(df$subject)

analysis<- ezANOVA(data= df, dv=.(value), wid= .(subject),between = .(class), detailed= TRUE, type= 3)
apa.format<- apa(analysis, format= "text")
@

The results, \Sexpr{(apa.format[2,2])}, indicate...

\end{document}

它应该产生的结果是:
F(1, 38) = 0.93, p = .341, ηp² = .02 我试图从 apa 函数更改格式,每个输出都会产生不同的问题:
* latex:产生文本(它不会使'F'斜体或'p')
* markdown:使 '*' 而不是产生斜体。
* 文本:不产生斜体或部分 eta 平方符号。
这可以在 Rmarkdown 中轻松实现,但是我遇到了许多其他问题。 建议?这可能包括:Sweave 中用于 APA 报告的不同包,集成 Latex 和 Rcode(并使用包)的不同方式或对先前输出的修复。 谢谢!

【问题讨论】:

    标签: r sweave


    【解决方案1】:

    \Sexpr 宏似乎“吃掉”apa() 放入输出的反斜杠,因此您需要将它们加倍。所以选择"latex"格式,然后加双反斜杠:

    apa.format <- apa(analysis, format= "latex")
    apa.format <- gsub("\\", "\\\\", as.matrix(apa.format), fixed = TRUE)
    

    这修复了apa.format 的所有条目,因此它们与\Sexpr 兼容。 as.matrix 是必要的,因为apa.format 是一个小标题,它不能很好地与gsub() 一起工作。 (我想你可以使用 mutate 或类似的东西来做同样的事情,如果你知道你在用 tibbles 做什么。我不知道。)

    输出是

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-02-09
      • 1970-01-01
      • 1970-01-01
      • 2010-12-27
      • 2022-01-08
      相关资源
      最近更新 更多