Ich schreibe meine These in LaTeX und da die Dinge für meinen Geschmack ein bisschen lang sind, habe ich sie in mehrere Dateien aufgeteilt. Nennen wir sie thesis.tex
, intro.tex
, mat_n_met.tex
, rslts.tex
und discsn.tex
. Ich habe intro.tex
, mat_n_met.tex
, rslts.tex
und discsn.tex
bis thesis.tex
mit \include{intro}
(und so weiter ...) verknüpft.
Ich habe auch eine separate Datei mit dem Namen r_crunching.Rnw
erstellt (die ich durch Sweave durchführe), die einen Chunk enthält, der das R-Skript mit Datenanalyse und Chunks ausführt, die PDF-Ausgaben von Graphen erzeugen, die ich über \includegraphics
einbettete (zB% Code%). Immer noch folgen?
Wenn ich einen Rnw (dh ich habe rslts.tex
in rslts.tex
umbenannt) ohne "eine Verbindung" zu dem Chunk mit dem R-Skript ausgeführt habe, erhalten Sie einen rslts.Rnw
Fehler, der besagt, dass der Verweis in Sweave()
doesn ' t existieren. Gibt es einen Weg, ohne alle Dateien zu einem einzigen .Rnw zusammenzufassen, um \Sexpr{}
in zB \Sexpr{}
?
Andere Methoden, wie dies zu erreichen ist, sind willkommen.
Vergessen Sie für eine Sekunde, dass Sie es mit Sweave zu tun haben und denken Sie nur an das Latex-Problem - für das \include
und \includeonly
Lösungen anbieten. Versuchen Sie das mit ein paar einfachen Testdateien.
Sobald Sie das herausgefunden haben, falten Sie Swave wieder in die Mischung und es funktioniert einfach, da Sweave nach 'nur' einem Vorverarbeitungsschritt ist, wenn auch ein sehr cleverer.
Ich empfehle die Verwendung von RStudio ( Ссылка ). Sweave ist gut in diese IDE integriert und unterstützt Dokumente mit mehreren Dateien. Selbst die Synctex- und TeX-Fehlerprotokoll-Navigation funktioniert immer noch bei der Arbeit mit Dokumenten mit mehreren Dateien.
Aus der Hauptdatei können Sie untergeordnete Dateien mit
einschließen %Vor%Sie können eine untergeordnete Datei mit der übergeordneten Datei verknüpfen, indem Sie die Anweisung
einfügen %Vor%in der untergeordneten Datei. Auf diese Weise weiß RStudio, wenn er an einer Kinddatei arbeitet und sie eingibt, die Masterdatei zu schreiben.
Die Details werden in der RStudio-Dokumentation unter Ссылка
erläutert Um die Antwort von Dirk und mjm zu erweitern, würde ich vorschlagen, \include
's und Makefiles zu verwenden.
Angenommen, Sie haben eine Master-Datei: master.tex
. In dieser Datei enthalten Sie einige Dateien .tex
und .Rnw
, d. H.
Nun bietet das folgende Makefile Funktionen zum Erstellen der Dateien .tex
, .R
und .pdf
:
Im Wesentlichen enthält .SUFFIXES
eine Reihe von Regeln für die Konvertierung von einem Dateiformat in ein anderes. Um beispielsweise von .Rnw
nach .R
zu konvertieren, verwenden wir den Befehl
Tags und Links r latex sweave literate-programming