Quiero presentar la salida del data.frame de R como una tabla LaTeX. La estructura de datos es data.frame
. Al hacer print(DF.tex)
, la salida se ve bien en STOUT, en contraste con el archivo.
Resultado esperado: formato UTF-8
Código 1
DF <- head(iris)
library("xtable") # https://stackoverflow.com/a/9274146/54964
filename.tex <- paste("/home/masi/text.tex")
DF.tex <- xtable(DF)
save(DF.tex, file = filename.tex)
Salida en la ubicación de la ruta: algo críptico hexadecimal
Código 2
f <- file(filename.tex, 'w') # https://stackoverflow.com/a/19837122/54964
cat(file = f, DF.tex, append = TRUE)
Salida: archivo de 0 bytes
Código 3
Estoy usando muchas funciones en mi script, así que por si acaso, usandoprint()
save(file = filename.tex, print(DF.tex))
Salida: archivo hexadecimal críptico
R: 3.4.0 (backports)
SO: Debian 8.7
Relacionado: Prueba 2 extendida en el disco¿Cómo guardar la salida de R stargazer (data.frame) en un documento .tex?con el stargazer
paquete
Respuesta1
Probando el código de ejemplo 1, el archivo producido, 'filename.tex' es en realidad un archivo gzip del objeto R que contiene los datos tex - para guardar la salida de texto del objeto, sin comprimir, use:
print(DF.tex, file = "/home/masi/filename.tex", compress = FALSE)
Para mí, probar el uso latex2html filename.tex
proporciona una tabla bien formateada.