Suche…


Syntax

  1. << interner Code-Chunk-Name, Optionen ... >> =
    # R-Code hier
    @
  2. \ Sexpr {#R-Code hier}
  3. << read-external-R-file >> =
    read_chunk ('r-file.R')
    @

    << externer Code-Chunk-Name, Optionen ... >> =
    @

Parameter

Möglichkeit Einzelheiten
Echo (TRUE / FALSE) - Gibt an, ob R-Quellcode in die Ausgabedatei aufgenommen werden soll
Botschaft (TRUE / FALSE) - Gibt an, ob Nachrichten aus der R-Quellenausführung in die Ausgabedatei aufgenommen werden sollen
Warnung (TRUE / FALSE) - Gibt an, ob Warnungen aus der R-Quellenausführung in die Ausgabedatei aufgenommen werden sollen
Error (TRUE / FALSE) - Gibt an, ob Fehler bei der Ausführung der R-Quelle in die Ausgabedatei aufgenommen werden sollen
Zwischenspeicher (TRUE / FALSE) - Gibt an, ob die Ergebnisse der R-Quellenausführung zwischengespeichert werden sollen
fig.breite (numerisch) - Breite der Darstellung, die durch die Ausführung der R-Quelle generiert wurde
fig.höhe (numerisch) - Höhe des Plots, der durch die Ausführung der R-Quelle generiert wird

Bemerkungen

Knitr ist ein Werkzeug, mit dem natürliche Sprache (in Form von LaTeX) und Quellcode (in Form von R) miteinander verwoben werden können. Im Allgemeinen wird das Konzept des Durchdringens von natürlicher Sprache und Quellcode als gebildete Programmierung bezeichnet . Da Knitr-Dateien eine Mischung aus LaTeX (traditionell in .tex-Dateien enthalten) und R (traditionell in .R-Dateien) enthalten, ist eine neue Dateierweiterung namens R noweb (.Rnw) erforderlich. .Rnw-Dateien enthalten eine Mischung aus LaTeX- und R-Code.

Knitr ermöglicht die Erstellung statistischer Berichte im PDF-Format und ist ein Schlüsselwerkzeug für reproduzierbare Forschung .

Das Kompilieren von .Rnw-Dateien in eine PDF-Datei erfolgt in zwei Schritten. Zunächst müssen wir wissen, wie der R-Code ausgeführt und die Ausgabe in einem Format erfasst wird, das ein LaTeX-Compiler verstehen kann (ein Vorgang, der als "Kniting" bezeichnet wird). Wir machen dies mit dem knitr-Paket. Der Befehl dafür wird unten angezeigt, vorausgesetzt, Sie haben das Knitr-Paket installiert :

Rscript -e "library(knitr); knit('r-noweb-file.Rnw')

Dadurch wird eine normale .tex-Datei (in diesem Beispiel als r-noweb.tex bezeichnet) generiert, die dann in eine PDF-Datei umgewandelt werden kann:

pdflatex r-noweb-file.tex

R in Latex mit Knitr und Code Externalisierung

Knitr ist ein R-Paket, mit dem wir R-Code mit LaTeX-Code vermischen können. Eine Möglichkeit, dies zu erreichen, sind externe Codeabschnitte. Externe Codeabschnitte ermöglichen es uns, R-Skripts in einer R-Entwicklungsumgebung zu entwickeln / testen und die Ergebnisse in einen Bericht aufzunehmen. Es ist eine mächtige Organisationstechnik. Dieser Ansatz wird im Folgenden gezeigt.

# r-noweb-file.Rnw
\documentclass{article}
 
 <<echo=FALSE,cache=FALSE>>=
 knitr::opts_chunk$set(echo=FALSE,  cache=TRUE)
 knitr::read_chunk('r-file.R')
 @
 
\begin{document}
This is an Rnw file (R noweb).  It contains a combination of LateX and R.
 
One we have called the read\_chunk command above we can reference sections of code in the r-file.R script.

<<Chunk1>>=
@
\end{document}

Bei diesem Ansatz bewahren wir unseren Code in einer separaten R-Datei auf (siehe unten).

## r-file.R
## note the specific comment style of a single pound sign followed by four dashes

# ---- Chunk1 ----

print("This is R Code in an external file")

x <- seq(1:10)
y <- rev(seq(1:10))
plot(x,y)

R in Latex mit Knitr und Inline Code Chunks

Knitr ist ein R-Paket, mit dem wir R-Code mit LaTeX-Code vermischen können. Eine Möglichkeit, dies zu erreichen, sind Inline-Code-Blöcke. Dieser Ansatz wird im Folgenden gezeigt.

# r-noweb-file.Rnw
\documentclass{article}     
\begin{document}
This is an Rnw file (R noweb).  It contains a combination of LateX and R.

<<my-label>>=
print("This is an R Code Chunk")
x <- seq(1:10)
@

Above is an internal code chunk.
We can access data created in any code chunk inline with our LaTeX code like this.
The length of array x is \Sexpr{length(x)}.

\end{document}

R in LaTex mit Knitr und Internal Code Chunks

Knitr ist ein R-Paket, mit dem wir R-Code mit LaTeX-Code vermischen können. Eine Möglichkeit, dies zu erreichen, sind interne Codeabschnitte. Dieser Ansatz wird im Folgenden gezeigt.

# r-noweb-file.Rnw
\documentclass{article}    
\begin{document}
This is an Rnw file (R noweb).  It contains a combination of LateX and R.

<<code-chunk-label>>=
print("This is an R Code Chunk")
x <- seq(1:10)
y <- seq(1:10)
plot(x,y)  # Brownian motion
@

\end{document}


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow