Bien, admito que este es un poco tenso (léase: "estúpido"), y supongo que también es bastante fácil. Estoy escribiendo un informe y quiero usar el xtable
paquete para la generación de tablas LaTeX (tenga en cuenta que el memisc
paquete hace el trabajo, pero digo que quiero hacer esto únicamente con xtable
).
mtcars
Usemos reshape
paquete y conjunto de datos estándar :
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
Si envuelvo esto dentro xtable
, obtendré los nombres de las filas (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}
Ahora bien, ¿hay alguna posibilidad de que pueda evitar esto (en una sola línea, si es posible)?
matrix
dedata.frame
conversión es realmente molesto. Esta es la única solución (solución alternativa) para conservarrownames
: vpihur.com/blog/?p=131 Así que tengo que modificar mi función: gist.github.com/887249 para establecerlarownames
como primera columna. Y luego rogarle a LaTeX que no alinee las celdas solo ... ¡maldita sea!