【问题标题】:Use : to call sequential variables使用 : 调用顺序变量
【发布时间】:2020-07-09 14:08:42
【问题描述】:

我正在尝试创建一组可供其他函数使用的动态变量。我尝试的一个例子是组合图像。我有创建动态变量的部分:

library(magick)
for(i in 0:19){
    assign(paste0("img_",i), image_red(paste0(i,".jpg")))
}

我想对所有变量使用以下语法: img_out <- image_append(img0:19) 这在 R 中是否可能,或者我将不得不遍历变量?

【问题讨论】:

  • 不,你不能像那样使用: 运算符。一般来说,将一堆命名变量循环写入全局环境并不是一个好主意。最好将它们全部放在一个列表中。因此,您可以执行以下操作,而不是您的循环:images <- lapply(0:19, function(i) image_red(paste0(i,".jpg"))),当您想要进行图像附加时,您可以执行类似 lapply(images, image_append) 的操作

标签: r


【解决方案1】:

据我所知,没有办法用image_append(img0:19) 做你想做的事情。我会遍历所有变量。您也可以尝试创建一个单独的变量列表并将其作为参数传递给image_append(),如果这样更容易的话。祝你好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-10-30
    • 2016-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多