如何在R中打印不带引号的逗号分隔字符串列表

如何在R中打印不带引号的逗号分隔字符串列表,r,dplyr,R,Dplyr,我在R中有一个数据框“output”,列出了我工作区中TIBLES的标签: output 1 csv1 2 csv2 3 csv3 4 csv4 5 csv5 6 csv6 7 csv7 8 csv8 . . 35 csv35 并希望将其打印为函数的输入: dplyr::bind_rows(csv1,csv2,csv3...csv35) (csv1、csv2等都是TIBLE本身) 粘贴()和as.list()似乎不起作用 非常感谢你的建

我在R中有一个数据框“output”,列出了我工作区中TIBLES的标签:

output
1    csv1
2    csv2
3    csv3
4    csv4
5    csv5
6    csv6
7    csv7
8    csv8
.
. 
35   csv35
并希望将其打印为函数的输入:

dplyr::bind_rows(csv1,csv2,csv3...csv35) 
(csv1、csv2等都是TIBLE本身)

粘贴()和as.list()似乎不起作用

非常感谢你的建议

最简单的方法可能是调用
mget()
来创建一个列表以传递给
bind\u rows

bind_rows(mget(output[[1]]))
不过,更一般地说,您的过程看起来像一个;在R中以列表的形式处理对象集比在工作区中生成一堆对象,然后找出如何处理它们更容易

例如,如果您有CSV文件的字符向量

csv_list <- purrr::map(csv_filenames, read_csv)
bind_rows(csv_list)
csv\u list可能最简单的方法就是调用
mget()
来创建一个列表以传递给
bind\u行

bind_rows(mget(output[[1]]))
不过,更一般地说,您的过程看起来像一个;在R中以列表的形式处理对象集比在工作区中生成一堆对象,然后找出如何处理它们更容易

例如,如果您有CSV文件的字符向量

csv_list <- purrr::map(csv_filenames, read_csv)
bind_rows(csv_list)

csv\u列表您确实想要打印一个字符串,还是您试图创建这个字符串来调用
bind\u rows()
?对不起,标题可能会有误导性-我不想打印为字符串,只想打印为csv1,csv2,不带引号,这样我就可以用它作为绑定行的输入()Call你有没有试过
mget
?@CocoNewton正如Ben在他的回答中所示(正如Rui在这里提到的),不要从通过将字符串粘贴在一起来创建调用的角度来考虑这个问题。你当然可以这样做,但这很复杂。相反,在列表中排列对象(这里是
csv1
csv2
,等等),然后使用列表(可以使用像
bind_rows()
这样的函数来获取列表,也可以使用
purr::map()
和friends对列表的元素进行迭代)。你真的想打印一个字符串,还是你试图创建它来调用
bind_rows()
?对不起,标题可能有误导性-我不想打印为字符串,只想打印为csv1,csv2,没有引号,这样我就可以用它作为绑定_rows()调用的输入。你有没有尝试过
mget
?@CocoNewton,如本在回答中所示(正如Rui在这里提到的)不要从通过将字符串粘贴在一起来创建调用的角度来考虑这个问题。你当然可以这样做,但这很复杂。相反,将你的对象(这里是
csv1
csv2
,等等)安排在一个列表中,然后使用该列表(或者使用像
bind\u rows()这样的函数)
它可以获取一个列表,或者通过使用
purr::map()
和friends()对列表中的元素进行迭代。感谢您指出这一点!那么您的意思是,不要生成35个不同的Tibble,而是尝试将它们放在一个对象中?或者不要将“输出”作为数据帧,而是另一个对象?设置您的工作流,以便您首先将Tibble生成为Tibble列表中的元素。。。(例如,如果这些是从读取CSV文件中派生出来的TIB文件,您可以使用
for
循环,或
lappy
,或
purr::map()
,将它们生成为列表)谢谢。我找到了一个解决方案,使用lappy可以将我的所有TIB文件都放在一个列表中。这样我就可以绑定行(列表[1],列表[2]),对吗?哪一个更好?那么您应该能够只做
bind_行(您的_列表)
!感谢您指出这一点!那么您的意思是,不要生成35个不同的Tibble,而是尝试将它们放在一个对象中?还是不要将“输出”作为数据帧,而是另一个对象?设置您的工作流,以便您首先将Tibble作为Tibble列表中的元素生成。。。(例如,如果这些是从读取CSV文件中派生出来的TIB文件,您可以使用
for
循环,或
lappy
,或
purr::map()
,将它们生成为列表)谢谢。我找到了一个解决方案,使用lappy可以将我的所有TIB文件都放在一个列表中。这样我就可以绑定行(列表[1],列表[2]),对吗?哪一个更好?那么您应该能够只绑定行(您的列表)