将数据框写入pdf表

use*_*980 5 r

我有一个数据框,我想以有组织的方式将其写入pdf文件.

例如,我的df看起来像这样:

Date    County    Trade
1/1/2012  USA     5
1/1/2012  Japan   4
1/2/2012  USA     10
1/3/2012  Germany 15
Run Code Online (Sandbox Code Playgroud)

我希望输出为按日期分组,在每组之后放置一个空格或换行符;

我有这段代码,但这会将所有内容打印到pdf文件而不进行分组:

library(gridExtra)
pdf("trade.pdf", height=11, width=8.5)
grid.table(df)
dev.off()
Run Code Online (Sandbox Code Playgroud)

任何想法如何最好地在pdf文件中显示此数据集与日期分组?我喜欢使用grid.Extra.有谁知道如何把标题放到grid.Extra?

And*_*nko 12

这段代码应该有效:

library(gridExtra)

df <- read.table(text = 
"1/1/2012  USA     5
1/1/2012  Japan   4
1/2/2012  USA     10
1/3/2012  Germany 15"
)
names(df) <- c("Date","Country","Trade")

EqDatedf <- as.data.frame(df[1,])
EmptyLine <- data.frame(Date = "",Country = "",Trade = "")

pdf(file = "q.pdf")

for (i in 2:nrow(df)) 
{
if (as.vector(df$Date[i])  ==  as.vector(df$Date[i-1])) 
{EqDatedf <- rbind(EqDatedf, df[i,])}

else {
EqDatedf <- rbind(EqDatedf, EmptyLine)
EqDatedf <- rbind(EqDatedf, df[i,]) 
     }
}

grid.table(EqDatedf, show.rownames = FALSE)
dev.off()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述


ags*_*udy 8

我真的建议你用RstudioKnitr.创建好的报告非常容易.

例如,

\documentclass{article}
\begin{document}
<<myTable,results='asis'>>=
library(xtable)
tab <- read.table(text = 'Date    County    Trade
1/1/2012  USA     5
1/1/2012  Japan   4
1/2/2012  USA     10
1/3/2012  Germany 15',header = TRUE)
print(xtable(tab),hline.after=c(2,3))   ## print.xtable have many smart options
@
\end{document}
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述