【发布时间】:2021-12-01 06:06:33
【问题描述】:
我试图弄清楚是否有一种方法可以使用 for 循环一次性创建多个表,所有表都使用相同的数据集 - 我会在一秒钟内澄清这一点。我正在使用 R Markdown,因为如果这有什么不同的话,我最终需要将它编译成 PDF。
所以我正在使用一个数据库并尝试根据其中一个变量的值将其分成多个表(使用 gt)。假设我的数据集是关于城镇的年度预算。
data <- data.frame(x=1, y=1:15, z=16:30)
colnames(data) <- c("County", "Town", "Budget")
sample.space <- c(1:5)
number.samples <- 15
data$County <- sample(sample.space, number.samples, replace = TRUE)
sample.space2 <- c(2500:5000)
data$Budget <- sample(sample.space2, number.samples, replace = FALSE)
(请原谅我有点笨拙的创作,这些天我不经常处理随机数。)
所以我想做的是创建单独的表格来显示 X 县内所有城镇的年度预算。我已经能够通过为每个县创建新数据集然后制作一个表格来很好地做到这一点来自新数据集。当你只看 5 个县时这很好,但如果是 50 个县,那就有点麻烦了。
我觉得应该有一些方法可以使用 for 循环来做到这一点。我的直觉是这样做,但是当我编译时,PDF 上没有任何内容。
library(gt)
for (i in 1:5) {
data[data$County == i, ] %>%
gt() %>%
tab_header(
title = "Annual Budget by County",
)
}
如果我选择一个县并在没有循环的情况下尝试相同的事情,我没有问题。
data[data$County == 1, ] %>%
gt() %>%
tab_header(
title = "Annual Budget for County 1",
)
如果我不能让它工作,这不是世界末日,但我希望比我更精明的人能解决这个问题!
谢谢:)
【问题讨论】: