首页 > 解决方案 > 如何粘贴逗号分隔和引号中的矢量元素?

问题描述

我想按dfr特定顺序按名称选择数据框列,我首先获得的数字。

> (x <- names(dfr)[c(3, 4, 2, 1, 5)])
[1] "c" "d" "b" "a" "e"

在最终代码中只应该包含名称版本,因为它更安全。

dfr[, c("c", "d", "b", "a", "e")

我想将用逗号和引号分隔的元素粘贴到字符串中,以便将其包含到最终代码中。我尝试了一些选项,但它们没有给我想要的东西:

> paste(x, collapse='", "')
[1] "c\", \"d\", \"b\", \"a\", \"e"
> paste(x, collapse="', '")
[1] "c', 'd', 'b', 'a', 'e"

我需要类似的东西"'c', 'd', 'b', 'a', 'e'"——当然"c", "d", "b", "a", "e"会更好。

数据

dfr <- setNames(data.frame(matrix(1:15, 3, 5)), letters[1:5])

标签: rstring

解决方案


vector_paste()datapasta包中尝试功能

library(datapasta)

vector_paste(input_vector = letters[1:3])
#> c("a", "b", "c")

vector_paste_vertical(input_vector = letters[1:3]) 
#> c("a",
#>   "b",
#>   "c")

推荐阅读