有没有办法在 RStudio Viewer 中显示多个表?

Is there a way to display multiple tables in the RStudio Viewer?

如果我 运行 以下交叉表代码,使用 summarytools 包中的 ctable 函数:

library(summarytools)
data(mtcars)
varlist <- names(mtcars[,3:5])
crosstables <- list(NULL)
for (i in varlist){
  crosstables[[i]] <- ctable(mtcars[[i]], mtcars$cyl, prop = 'r', style="simple", method = "render", header=TRUE)
  view(crosstables[[i]])
  }

在 RStudio 查看器中不会看到三个交叉表,只显示最后一个。如果我尝试显示所有三个表:

view(crosstables)

我收到以下错误消息:

x must either be a summarytools object created with freq(), descr(), or a list of freq() / descr() objects created using by(), or a list of freq() objects created using lapply(). Support for by() used with ctable() may be available in future realeases.

有没有办法在同一个查看器中堆叠所有三个表格window?也许是一种合并交叉表的 html 输出文件的方法?

你可以把view改成print然后织成html

相同的代码:

library(summarytools)
data(mtcars)
varlist <- names(mtcars[,3:5])
crosstables <- list(NULL)
for (i in varlist){
  crosstables[[i]] <- ctable(mtcars[[i]], mtcars$cyl, prop = 'r', style="simple", method = "render", header=TRUE)
  print(crosstables[[i]])
  }

只有最后一行不同。然后使用 RStudio 的编织功能:

作为降价解决方案的替代方案,包的 print 方法/view 函数有一个 append 参数。因此,当您使用 file 参数并将第一个交叉 table 的输出直接输出到 html 文件时,您可以使用相同的文件路径为其他两个使用 append=TRUE.