2016-05-18 81 views
2

我有名爲「abc12」和「abc13」的向量,它具有我想要使用的數字列表。我試圖將這些向量(它們是12和13)的長度粘貼到字符串「abc」中,然後使用這個名爲abc12的字符串。通過使用這個字符串「abc12」,我想從這個字符串「abc12」中提取出矢量abc12。我怎麼能在R中做這件事?使用字符串提取與字符串名稱相同的列表

+0

'?GET'喜歡'得到(「abc12」)'也許。雖然如果你使用'get'和'assign',你可能在某處出錯了。 – thelatemail

+0

謝謝_________________________ – zoc99

+0

您可以使用'mget'作爲多個元素,即'mget(ls(pattern =「abc \\ d +」))' – akrun

回答

0

假設,我們創建的載體, 'V1' 和 'V2'

v1 <- 1:12 
v2 <- 1:13 

然後,我們用向量assign值來創建新的對象。

assign(paste0("abc", length(v1)), v1) 
assign(paste0("abc", length(v2)), v2) 
abc12 
#[1] 1 2 3 4 5 6 7 8 9 10 11 12 

如果我們需要提取字符串 「ABC12」, 「abc13」,使用lspattern

ls(pattern = "abc\\d+") 
#[1] "abc12" "abc13" 

或者另一種選擇是deparse/substitute

deparse(substitute(abc12)) 
#[1] "abc12"