
Ich möchte mit TeX einen Bericht basierend auf Daten aus einem R-Objekt (Datenrahmen) setzen. Die Idee besteht darin, aus jeder Zeile eines R-Datenrahmens eine schöne TeX-Tabelle auszudrucken.
Etwas wie
\begin{tabular}{ l c r }
A1 & B1 & C1 \\
\end{tabular}
\begin{tabular}{ l c r }
A2 & B2 & C2 \\
\end{tabular}
\begin{tabular}{ l c r }
A3 & B3 & C3 \\
\end{tabular}
Bitte beachten Sie die folgenden MWE
\documentclass{article}
\begin{document}
<<prepare data>>=
one <- c("A1","B1","C1")
two <- c("A2","B2","C2")
three <- c("A3","B3","C3")
df <- data.frame(one,two,three)
@
<<loop data>>=
for (i in 1:nrow(df)) {
print(df[i])
}
@
\end{document}
das erzeugt
Wie kann ich die von der R-Schleife ausgegebenen Werte mit TeX setzen? Mit anderen Worten, wie kann ich \loop...\repeat
mit TeX über R-Schleifenvariablen arbeiten?
Antwort1
Du kannst den ... benutzenxtablePaket:
<<loop-data, results='asis'>>=
library(xtable)
for (i in 1:nrow(df)) {
print(xtable(t(df[i])))
}
@
Oder nutzen Sie die kable()
Funktion inStricken:
<<loop-data, results='asis'>>=
for (i in 1:nrow(df)) {
kable(t(df[i]), row.names=FALSE)
}
@
Der Schlüssel ist die Chunk-Option results='asis'
.