OK, ich gebe zu, dass dieser etwas angespannt ist (sprich: "dumm"), und ich gehe davon aus, dass es auch ziemlich einfach ist. Ich schreibe einen Bericht und möchte das xtable
Paket für die LaTeX-Tabellengenerierung verwenden (beachten Sie, dass das memisc
Paket die Aufgabe erfüllt, aber sagen Sie, dass ich dies ausschließlich mit tun möchte xtable
).
Verwenden wir den Standarddatensatz mtcars
und das Standardpaket reshape
:
mdtf <- melt(mtcars, id.vars = c("am", "cyl"), measure.vars = c("mpg", "hp", "wt"))
( res <- cast(mdtf, am + cyl ~ variable, mean) )
am cyl mpg hp wt
1 0 4 22.90000 84.66667 2.935000
2 0 6 19.12500 115.25000 3.388750
3 0 8 15.05000 194.16667 4.104083
4 1 4 28.07500 81.87500 2.042250
5 1 6 20.56667 131.66667 2.755000
6 1 8 15.40000 299.50000 3.370000
Wenn ich das xtable
einpacke, bekomme ich Zeilennamen (1..6):
xtable(res)
% latex table generated in R 2.13.0 by xtable 1.5-6 package
% Fri Mar 25 09:40:12 2011
\begin{table}[ht]
\begin{center}
\begin{tabular}{rrrrrr}
\hline
& am & cyl & mpg & hp & wt \\
\hline
1 & 0.00 & 4.00 & 22.90 & 84.67 & 2.94 \\
2 & 0.00 & 6.00 & 19.12 & 115.25 & 3.39 \\
3 & 0.00 & 8.00 & 15.05 & 194.17 & 4.10 \\
4 & 1.00 & 4.00 & 28.07 & 81.88 & 2.04 \\
5 & 1.00 & 6.00 & 20.57 & 131.67 & 2.75 \\
6 & 1.00 & 8.00 & 15.40 & 299.50 & 3.37 \\
\hline
\end{tabular}
\end{center}
\end{table}
Gibt es jetzt eine Chance, dass ich dies vermeiden kann (wenn möglich in einem Liner)?
matrix
für diedata.frame
Konvertierung ist wirklich ärgerlich. Dies ist die einzige Lösung (Problemumgehung), die beibehalten werden mussrownames
: vpihur.com/blog/?p=131 Daher muss ich meine Funktion ändern: gist.github.com/887249 , um sierownames
als erste Spalte festzulegen . Und dann LaTeX zu bitten, die Zellen nicht alleine auszurichten ... verdammt!