I want to have R display the data it gives me from the summary()
function in a table so I can easily share this. I am currently just doing summary()
in the console and then taking a screenshot, but I would rather have this generated as a nice table just like all of my graphs are. Any ideas?
Asked
Active
Viewed 3.7k times
8

chl
- 50,972
- 18
- 205
- 364

Ethan Bartolic
- 81
- 1
- 1
- 2
-
1I've updated the title of your question to reflect its content. Otherwise, it is a duplicated of [Graphical data overview (summary) function in R](http://stats.stackexchange.com/q/4089/930). – chl Aug 08 '12 at 01:12
-
You may want to read this awesome post on tables: [Some notes on making effective tables](http://stats.blogoverflow.com/2012/02/some-notes-on-making-effective-tables/) by CV contributor @AndyW. Much of it is general information about tables (albeit *awesome* general information), but there is some specific to making tables in R w/ $\LaTeX$ as well. – gung - Reinstate Monica Aug 08 '12 at 03:52
1 Answers
4
If you have the R package Hmisc
and a working latex installation you can do:
x=rnorm(1000)
y=rnorm(1000)
lm1=lm(y~x)
slm1=summary(lm1)
latex(slm1)
It works the same with datasets,
latex(summary(cars))

Seth
- 577
- 4
- 11
-
1An even better solution is to directly use `summary.formula`, e.g. `print(summary(~ x + y), prmsd=TRUE, digits=1)`. The `latex` command assumes the OP has a working $\TeX$ installation. It is often convenient to just output plain text, like this: `capture.output(print(summary(~ x + y), prmsd=TRUE, digits=1), file="out.txt")`. – chl Aug 08 '12 at 01:01
-
2Another approach to outputting plain text that works well is to use [?sink](http://stat.ethz.ch/R-manual/R-devel/library/base/html/sink.html). Eg, `sink(file=
, type="output"); – gung - Reinstate Monica Aug 08 '12 at 03:57; sink()`, then a text file will exist in the working directory with whatever would have been the output of the functions used.