usuario una predeterminada precio pagina l6171 imprimir impresora configurar como chrome caracteristicas r dataframe formatting

una - Cómo imprimir(en papel) un marco de datos con un formato agradable



epson l6171 precio (10)

Aquí hay una posibilidad rápida y fácil usando grid.table del paquete gridExtra:

library(gridExtra) pdf("data_output.pdf", height=11, width=8.5) grid.table(mtcars) dev.off()

Si sus datos no se ajustan a la página, puede reducir el tamaño del texto grid.table(mtcars, gp=gpar(fontsize=8)) . Esto puede no ser muy flexible, ni fácil de generalizar o automatizar.

Me gustaría imprimir marcos de datos con buen formato en papel, idealmente desde un script. (Estoy intentando recopilar datos usando un instrumento y procesarlos e imprimirlos automáticamente con un guión R).

Ahora mismo puedo escribir un marco de datos en un archivo de texto usando write.table() , pero esto tiene dos problemas:

  1. El archivo de texto resultante está mal formateado (las columnas no se alinean necesariamente con sus títulos) y
  2. No sé cómo imprimir un archivo de texto desde R.

Estoy buscando más estrategias generales que para código específico (¡aunque el código también sería genial!). ¿Sweave sería la solución más conveniente? En principio, ¿puedo usar socketConnection() para imprimir en una impresora y, de ser así, dónde puedo obtener información sobre cómo usarlo (la documentación no me socketConnection() muy útil).


El RStudio IDE ofrece otra buena opción para imprimir una tabla de datos:

  1. Abra los datos en el visor, por ejemplo, View(data_table) o a través de la GUI
  2. Abra la vista en una ventana separada (icono en la esquina superior izquierda: "Mostrar en una nueva ventana")
  3. La ventana separada ahora es compatible con un cuadro de diálogo de impresión (incluida la vista previa)

Esto funciona en RStudio V0.98.1103 (y probablemente versiones más nuevas)


El paquete printr es una buena opción para imprimir data.frames , páginas de ayuda, listados de viñetas y listas de conjuntos de datos en documentos knitr .

Desde la printr :

options(digits = 4) set.seed(123) x = matrix(rnorm(40), 5) dimnames(x) = list(NULL, head(LETTERS, ncol(x))) knitr::kable(x, digits = 2, caption = "A table produced by printr.")


La solución grid.table será la forma más rápida de crear PDF, pero esta puede no ser la solución óptima si tiene una tabla bastante larga. RStudio + knitr + longtable hace que sea bastante fácil crear PDF con buen formato. Lo que necesitarás es algo como:

/documentclass{article} /usepackage{longtable} /begin{document} <<results=''asis''>>= library(xtable) df = data.frame(matrix(rnorm(400), nrow=100)) xt = xtable(df) print(xt, tabular.environment = "longtable", floating = FALSE ) @ /end{document}

Pls vea this publicación para más detalles.


Me encontré con esta pregunta cuando buscaba hacer algo similar. Encontré mención del comando sink en elsewhere en que fue útil en este contexto:

sink(''myfile.txt'') print(mytable,right=F) sink()


No es tan elegante, pero muy utilitario:

print.data.frame(iris)


Para tablas largas / anchas podrías usar pander .

Se dividirá automáticamente las tablas largas en partes más cortas que se ajusten a la página, por ejemplo, utilizando knitr insertar este fragmento en su archivo Rmd:

pander::pander(mtcars)

Si desea algo que se parezca más a tablas de Excel (incluso con opciones de edición en html), utilice rhandsontable . Más información sobre el uso y el formato en la vignette . Tendrás que tejer tu Rmd en un archivo html:

library(rhandsontable) rhandsontable(mtcars, rowHeaders = NULL)


Si desea exportar como png, puede hacer esto:

library(gridExtra) png("test.png", height = 50*nrow(df), width = 200*ncol(df)) grid.table(df) dev.off()

Si desea exportar en formato pdf, puede hacer esto:

library(gridExtra) pdf("test.pdf", height=11, width=10) grid.table(df) dev.off()


Sorprendido, nadie ha mencionado el paquete de stargazer para una buena impresión de datos.

Puede generar un archivo de texto atractivo:

stargazer(mtcars, type = ''text'', out = ''out.txt'') ============================================ Statistic N Mean St. Dev. Min Max -------------------------------------------- mpg 32 20.091 6.027 10.400 33.900 cyl 32 6.188 1.786 4 8 disp 32 230.722 123.939 71.100 472.000 hp 32 146.688 68.563 52 335 drat 32 3.597 0.535 2.760 4.930 wt 32 3.217 0.978 1.513 5.424 qsec 32 17.849 1.787 14.500 22.900 vs 32 0.438 0.504 0 1 am 32 0.406 0.499 0 1 gear 32 3.688 0.738 3 5 carb 32 2.812 1.615 1 8 --------------------------------------------

O incluso HTML:

stargazer(mtcars, type = ''html'', out = ''out.html'')

<table style="text-align:center"><tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">Statistic</td><td>N</td><td>Mean</td><td>St. Dev.</td><td>Min</td><td>Max</td></tr> <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr><tr><td style="text-align:left">mpg</td><td>32</td><td>20.091</td><td>6.027</td><td>10.400</td><td>33.900</td></tr> <tr><td style="text-align:left">cyl</td><td>32</td><td>6.188</td><td>1.786</td><td>4</td><td>8</td></tr> <tr><td style="text-align:left">disp</td><td>32</td><td>230.722</td><td>123.939</td><td>71.100</td><td>472.000</td></tr> <tr><td style="text-align:left">hp</td><td>32</td><td>146.688</td><td>68.563</td><td>52</td><td>335</td></tr> <tr><td style="text-align:left">drat</td><td>32</td><td>3.597</td><td>0.535</td><td>2.760</td><td>4.930</td></tr> <tr><td style="text-align:left">wt</td><td>32</td><td>3.217</td><td>0.978</td><td>1.513</td><td>5.424</td></tr> <tr><td style="text-align:left">qsec</td><td>32</td><td>17.849</td><td>1.787</td><td>14.500</td><td>22.900</td></tr> <tr><td style="text-align:left">vs</td><td>32</td><td>0.438</td><td>0.504</td><td>0</td><td>1</td></tr> <tr><td style="text-align:left">am</td><td>32</td><td>0.406</td><td>0.499</td><td>0</td><td>1</td></tr> <tr><td style="text-align:left">gear</td><td>32</td><td>3.688</td><td>0.738</td><td>3</td><td>5</td></tr> <tr><td style="text-align:left">carb</td><td>32</td><td>2.812</td><td>1.615</td><td>1</td><td>8</td></tr> <tr><td colspan="6" style="border-bottom: 1px solid black"></td></tr></table>


Sugeriría xtable en combinación con documentos LaTeX. Echa un vistazo a los ejemplos en este pdf:

También podría combinar esto directamente con Sweave o knitr .