Auf allgemeine Anfrage ein Community-Wiki zum Erstellen von Latex-Tabellen in R. In diesem Beitrag werde ich einen Überblick über die am häufigsten verwendeten Pakete und Blogs mit Code zum Erstellen von Latex-Tabellen aus weniger einfachen Objekten geben. Bitte fügen Sie alle fehlenden hinzu und / oder geben Sie Tipps, Hinweise und kleine Tricks zur Herstellung schön formatierter Latex-Tische mit R.
Pakete :
- xtable : für Standardtabellen der meisten einfachen Objekte. Eine schöne Galerie mit Beispielen finden Sie hier .
- memisc : Tool zur Verwaltung von Umfragedaten , enthält einige Tools für Latextabellen von (grundlegenden) Regressionsmodellschätzungen.
- Hmisc enthält eine Funktion
latex()
, die eine Tex-Datei erstellt, die das Objekt Ihrer Wahl enthält. Es ist ziemlich flexibel und kann auchlongtable
Latex-Tabellen ausgeben . Die Hilfedatei enthält viele Informationen?latex
- miscFuncs hat eine nette Funktion 'latextable', die Matrixdaten mit gemischten alphabetischen und numerischen Einträgen in eine LaTeX-Tabelle konvertiert und auf der Konsole druckt, damit sie kopiert und in ein LaTeX-Dokument eingefügt werden können.
- Das texreg- Paket ( JSS-Papier ) konvertiert statistische Modellausgaben in LaTeX-Tabellen. Fügt mehrere Modelle zusammen. Kann mit etwa 50 verschiedenen Modelltypen umgehen, einschließlich Netzwerkmodellen und Mehrebenenmodellen (lme und lme4).
- reporttools- Paket ( JSS-Papier ) ist eine weitere Option für beschreibende Statistiken zu kontinuierlichen, kategorialen und .
- Das Tabellenpaket ist möglicherweise das allgemeinste LaTeX-Paket zur Tabellenerstellung in R für beschreibende Statistiken
- Das stargazer- Paket erstellt schöne vergleichende statistische Modellzusammenfassungstabellen
Blogs und Codefragmente
- Es gibt die Outreg-Funktion von Paul Johnson , die Stata-ähnliche Tabellen in Latex für die Ausgabe von Regressionen liefert. Dieser funktioniert großartig.
- Wie in einer früheren Frage angegeben, gibt es ein Code-Snippet zum Anpassen des Memisc-Pakets für lme4-Objekte .
Verwandte Fragen:
- Vorschlag für ein R / LaTeX-Tabellenerstellungspaket
- Ausgabepaket für Bericht / LaTeX-Qualität
- Sortieren einer Tabelle für die Latexausgabe mit xtable
- Gibt es eine Möglichkeit, eine LaTeX-Tabelle aus einem lme4 mer-Modell-Anpassungsobjekt zu erstellen?
- R data.frame mit gestapelten angegebenen Titeln für die Latexausgabe mit xtable
- Automatisches Hinzufügen von Tabellen zu Latex aus R mit einer sehr flexiblen und interessanten Syntax unter Verwendung der Formelsprache
include
oderinput
. Sie können verwenden,writeLines()
was mit beidenkable()
und funktioniertxtable()
. Als .tex-Dateien speichern und Problem gelöst.input
, um ein Dokument in die anderen zu übertragen. Das Latex-Handbuch zeigt Ihnen, dass dies mit der Eingabe des Inhalts des Dokuments an dieser Stelle identisch ist. Daher müssen Sie nicht das gesamte Setup, das Sie in der Präambel vorgenommen haben, kopieren und einfügen.Antworten:
Ich möchte das "Brew" -Paket erwähnen. Sie können eine Brühvorlagendatei schreiben, die LaTeX mit Platzhaltern wäre, und sie dann "brauen", um eine .tex-Datei zu erstellen, die Sie in Ihr LaTeX einschließen oder eingeben können. Etwas wie:
Die Brühsyntax kann auch Schleifen verarbeiten, sodass Sie für jede Zeile eines Datenrahmens eine Tabellenzeile erstellen können.
quelle
Vielen Dank an Joris für die Erstellung dieser Frage. Hoffentlich wird daraus ein Community-Wiki.
Die Booktabs-Pakete aus Latex produzieren gut aussehende Tische. Hier ist ein Blog-Beitrag über die Verwendung von xtable zum Erstellen von Latex-Tabellen mit Booktabs
Ich würde das
apsrtable
Paket auch zum Mix hinzufügen , da es gut aussehende Regressionstabellen erzeugt.Eine andere Idee: Einige dieser Pakete (insbesondere memisc und apsrtable) ermöglichen eine einfache Erweiterung des Codes, um Tabellen für verschiedene Regressionsobjekte zu erstellen. Ein solches Beispiel ist der in der Frage gezeigte lme4-Memisc-Code. Es kann sinnvoll sein, ein Github-Repository zu starten, um solche Codefragmente zu sammeln, und es im Laufe der Zeit möglicherweise sogar zum Memisc-Paket hinzuzufügen. Irgendwelche Abnehmer?
quelle
Das Stargazer- Paket ist eine weitere gute Option. Es unterstützt Objekte aus vielen häufig verwendeten Funktionen und Paketen (lm, glm, svyreg, Survival, pscl, VRE) sowie aus zelig. Zusätzlich zu Regressionstabellen können auch Zusammenfassungsstatistiken für Datenrahmen ausgegeben oder der Inhalt von Datenrahmen direkt ausgegeben werden.
quelle
Ich habe ein paar Tricks und arbeite an interessanten 'Features' von xtable und Latex, die ich hier teilen werde.
Trick Nr. 1: Entfernen von Duplikaten in Spalten und Trick Nr. 2: Verwenden von Booktabs
Laden Sie zuerst Pakete und definieren Sie meine Clean-Funktion
Generieren Sie nun einige gefälschte Daten
Jetzt können wir eine Tabelle generieren und die Bereinigungsfunktion verwenden, um doppelte Einträge in den Beschriftungsspalten zu entfernen.
Dies ist eine normale xtable
Dies ist eine normale xtable, bei der eine benutzerdefinierte Funktion Duplikate in NA umgewandelt hat
Diese Tabelle verwendet das booktab-Paket (und benötigt ein \ usepackage {booktabs} in den Headern).
quelle
Zwei Dienstprogramme im Paket taRifx können zusammen verwendet werden, um mehrzeilige Tabellen verschachtelter Erben zu erstellen.
quelle
... und Trick # 3 Mehrzeilige Einträge in einer Xtable
Generieren Sie weitere Daten
Erstellen Sie nun unsere xtable, indem Sie die Funktion sanitize verwenden, um Spaltennamen durch die richtigen Latex-Zeilenumbruchbefehle zu ersetzen (einschließlich doppelter Backslashes, damit R zufrieden ist).
(Obwohl dies nicht perfekt ist, da wir \ tabularnewline benötigen, damit die Tabelle korrekt formatiert ist und Xtable immer noch ein final \ einfügt, wird am Ende eine leere Zeile unter der Tabellenüberschrift angezeigt.)
quelle
Sie können auch die Latextable-Funktion aus dem R-Paket micsFuncs verwenden:
http://cran.r-project.org/web/packages/miscFuncs/index.html
latextable (M) wobei M eine Matrix mit gemischten alphabetischen und numerischen Einträgen ist, gibt eine grundlegende LaTeX-Tabelle auf dem Bildschirm aus, die kopiert und in ein LaTeX-Dokument eingefügt werden kann. Wenn es kleine Zahlen gibt, werden diese auch durch die Indexnotation ersetzt (z. B. 1,2 x 10 ^ {- 3}).
quelle
Ein weiteres R-Paket zum Aggregieren mehrerer Regressionsmodelle in LaTeX-Tabellen ist texreg .
quelle