定义了一堆字符对象。然后使用ls在列表中描述它们。我想将每个对象与一个单独的字符串连接起来。

String = "stringToCombine"
Folder1 = "NameOne"
Folder2 = "NameTwo"
Folder3 = "NameThree"

ls(pattern="Folder")
[1] "Folder1" "Folder2" "Folder3"

Folder1
[1] "NameOne"

我可以使用assign将字符串与对象名称而非值连接在一起。我认为get可能是实现此目的的方法,但是我不确定如何应用它。
for (i in ls(pattern="Folder")) {
    assign(i, paste(String, i, sep="/"))
    }

所需的输出:
Folder1
[1] "stringToCombine/NameOne"

上面的代码的实际输出:
Folder1
[1] "StringToCombine/Folder1"

我怀疑这是一个简单的修复程序,但会有所帮助。

最佳答案

您只需要添加get

for (i in ls(pattern="Folder")) {
    assign(i, paste(String, get(i), sep="/"))
}
Folder1
[1] "stringToCombine/NameOne"

关于r - 将列表的每个元素与字符串连接,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47543902/

10-12 20:20