2017-03-13 7 views
1

Ich bin auf der Suche nach einem R-Paket, das Tabellen in Publikationsqualität in einem Word-Format-Bericht erstellen kann, so dass die Tabellen Variablenlabels enthalten. Ich möchte eine Einweg Tabelle mit der Bezeichnung „Blumenarten“ wie die von Stata generiert:Erstellen Tabelle mit Variablenlabels in R

tab Species 

    Flower | 
    species |  Freq.  Percent  Cum. 
------------+----------------------------------- 
    setosa |   50  33.33  33.33 
versicolor |   50  33.33  66.67 
    virginica |   50  33.33  100.00 
------------+----------------------------------- 
     Total |  150  100.00 

Ich habe meine Variablenlabels über die Hilfe von label {Hmisc} Funktion gesetzt:

library(Hmisc) 
label(iris$Species) <- 'Flower species' 
label(iris$Species) 
[1] "Flower species" 

Jetzt ich möchte Spezies mit der Bezeichnung ‚Flower Art‘ und hier sind meine Optionen tabellieren:

Option 1:

library(catspec) 
ctab(iris$Species) 
      Count Total % 
Var1      
setosa  50.00 33.33 
versicolor 50.00 33.33 
virginica 50.00 33.33 

Problem ist, daß das Etikett angezeigt wird, ist 'Var1' anstelle von 'Blumenarten'

Option 2:

library(sjPlot) 
sjt.frq(iris$Species) 

enter image description here

Dies zeigt die variable Markierung als erforderlich, aber diese Funktion erzeugt nur eine HTML-Ausgabetabelle und kann nicht in Word-Format-Ausgabe exportiert werden, während das saubere Tabellenformat beibehalten wird.

Option 3:

Von this Seite:

source("http://pcwww.liv.ac.uk/~william/R/crosstab.r") 
crosstab(iris, row.vars='Species') 

Species  Count Total % 
    setosa  50.00 33.33 
    versicolor 50.00 33.33 
    virginica 50.00 33.33 
    Sum  150.00 100.00 

Diese Funktion zeigt nicht das Etikett ‚Flower Art‘ und ich bin nicht sicher, ob es Möglichkeiten angeben, wie Etiketten angezeigt werden soll.

+0

Meinten Sie dynamische Beschriftung zu einer Tabelle hinzufügen? Vielleicht sehen [hier] (http://stackoverflow.com/questions/25867689) und [hier] (http://stackoverflow.com/questions/33965560)? – zx8754

+0

Nein, die Beschriftung könnte gut sein, aber ich mache mir mehr Gedanken über die Variable – amo

+0

. Ist 'knitr :: kable (ctab (iris $ Species) $ ctab, caption = 'Flower Species') 'für Sie geeignet? –

Antwort

0

Ich empfehle das Arsenal-Paket. Versuchen Sie Folgendes:

library(arsenal) 
library(rmarkdown) 

t1<-tableby(~Species,data = iris) 
labels(t1)<- c(Species='Flower species') 

write2word(t1,"d:/test.doc") 

Dies ergibt die folgende Tabelle. Sehen Sie das Arsenal docmentation für weitere Hilfe, sie haben sehr gute Vignetten

enter image description here

+0

Diese Funktion liefert eine hübsche Ausgabe, die in rmarkdown gut dargestellt wird – amo