2016-05-18 41 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"