【问题标题】:how to use character vector select object in r [duplicate]如何在r中使用字符向量选择对象[重复]
【发布时间】:2020-09-19 07:27:03
【问题描述】:

我为这个问题苦苦挣扎了很长时间。比如说,我有 2 个地块,想使用 ggexport() 导出它们。

library(ggplot2)

p1 <- qplot(data = mtcars, x = cyl)
p2 <- qplot(data = mtcars, x = cyl, y = mpg)

plot_list <- list(p1, p2)
ggexport(plotlist = plot_list, filename = 'test.pdf')

现在我有许多名为p1,p2,p3...p100 的图,我不想一一输入,所以我使用paste0()(在这个例子中我只粘贴p1p2)

plot_list <- list(paste0('p',1:2))

这只是plot_list 中的一个字符向量,而不是情节。我搜索了一些方法并尝试了,但都失败了。

plot_list <- list(parse(paste0('p',1:2)))

plot_list <- list(eval(parse(paste0('p',1:2))))

plot_list <- list(syms(paste0('p',1:2)))

# only one plot in it
plot_list <- list(get(paste0('p',1:2)))

有人可以告诉我如何做到这一点或支持一些参考。我觉得我在对象名的选择和使用上有很多不足。

任何帮助将不胜感激!

【问题讨论】:

  • plot_list &lt;- mget(paste0('p',1:2))

标签: r


【解决方案1】:

使用lapplyget 应用于情节名称的字符向量可以返回情节列表

plot_list <- lapply(paste0('p',1:2), get)

【讨论】:

    猜你喜欢
    • 2019-07-20
    • 2018-04-28
    • 1970-01-01
    • 2021-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    相关资源
    最近更新 更多