R中带有xtable的变量概述

问题描述 投票:12回答:4

我想知道是否有可能通过命令xtable创建str(x)来从您使用的变量中获得概述。将某人介绍给数据集将是一个很好的功能,但是您自己创建它很烦人。所以我试图做的是像这样制作一个xtable

str(cars)
require(xtable)
xtable(str(cars))

汽车数据集来自R。不幸的是,xtable没有提供str()的Latexcode。在这里可能会比R聪明吗?以下是xtable将理解的主要命令:

methods(xtable)

有什么想法吗?

r statistics xtable
4个回答
10
投票

由于xtabledata.framesmatrix对象一起使用可提供最佳结果,所以我建议使用类似这样的东西:

library(xtable)
library(plyr)
dtf <- sapply(mtcars, each(min, max, mean, sd, var, median, IQR))
xtable(dtf)
% latex table generated in R 2.12.2 by xtable 1.5-6 package                                                                  
% Thu May  5 19:40:08 2011                                                                                                   
\begin{table}[ht]                                                                                                            
\begin{center}                                                                                                               
\begin{tabular}{rrrrrrrrrrrr}                                                                                                
  \hline                                                                                                                     
 & mpg & cyl & disp & hp & drat & wt & qsec & vs & am & gear & carb \\                                                       
  \hline                                                                                                                     
min & 10.40 & 4.00 & 71.10 & 52.00 & 2.76 & 1.51 & 14.50 & 0.00 & 0.00 & 3.00 & 1.00 \\                                      
  max & 33.90 & 8.00 & 472.00 & 335.00 & 4.93 & 5.42 & 22.90 & 1.00 & 1.00 & 5.00 & 8.00 \\                                  
  mean & 20.09 & 6.19 & 230.72 & 146.69 & 3.60 & 3.22 & 17.85 & 0.44 & 0.41 & 3.69 & 2.81 \\                                 
  sd & 6.03 & 1.79 & 123.94 & 68.56 & 0.53 & 0.98 & 1.79 & 0.50 & 0.50 & 0.74 & 1.62 \\                                      
  var & 36.32 & 3.19 & 15360.80 & 4700.87 & 0.29 & 0.96 & 3.19 & 0.25 & 0.25 & 0.54 & 2.61 \\                                
  median & 19.20 & 6.00 & 196.30 & 123.00 & 3.70 & 3.33 & 17.71 & 0.00 & 0.00 & 4.00 & 2.00 \\                               
  IQR & 7.38 & 4.00 & 205.18 & 83.50 & 0.84 & 1.03 & 2.01 & 1.00 & 1.00 & 1.00 & 2.00 \\                                     
   \hline                                                                                                                    
\end{tabular}                                                                                                                
\end{center}                                                                                                                 
\end{table} 

很抱歉,冗长的输出。您可以抓取PDF hereeach是非常通用的功能,因为您可以轻松定义自定义摘要。此外,str将输出返回到stdout,因此您无法检索特定变量的摘要。在这种情况下,sapply将简化结果,而不是matrix。但这不是问题,对吧?


17
投票

另一个要查看的包是data.frame。这是一段简短的代码,说明其在reporttools程序包的tips数据集上的用法。这两个摘要语句均生成乳胶代码,可以将其复制粘贴到文档中,或用于编织。

reshape

编辑。如果您确实必须使用library(reporttools) data(tips, package = 'reshape') # summarize numeric variables tableContinuous(tips[,sapply(tips, is.numeric)]) # summarize non-numeric variables tableNominal(tips[,!sapply(tips, is.numeric)]) ,那么这是解决问题的一种方法

str

OUTPUT FROM REPORTTOOLS:“在这里输入的图像描述” ”在此处输入图像描述“


14
投票

如果您愿意花一些时间研究str_cars = capture.output(str(cars)) xtable(data.frame(str_cars)) 程序包的工作原理,您很快就会发现有许多实用程序可以简化此类任务。特别地,Hmisc方法通过报告简化了对data.frame的描述。

名称,标签(如果有),单位(如果有任何),因素水平的数量(如果任何),因子水平,类别,存储模式和NA的数量

标签和单位可以绑定(内部为contents())到每个变量。有用于查看和导出的attributesprinthtml相关方法。

另一个不错的功能是latex功能,如下所示:

describe()

0
投票

您也可以看一下,

© www.soinside.com 2019 - 2024. All rights reserved.