The ls(pattern="")
函数对我来说非常有用,因为我的对象列表似乎在不断增长。我很好奇这个功能是否可以更有用。
例如,假设我有 4 个对象,
a.c<-1
b.c<-2
c.c<-3
d.c<-4
现在我使用有用的ls(pattern="")
功能
ls(pattern=".c")
现在我尝试列一个清单
list(ls(patter=".c"))
但它没有给我任何有用的东西("a.c" "b.c" "c.c" "d.c"
)。我想要这两个输出中的一个
1,2,3,4
OR
a.c, b.c, c.c, d.c
有几个问题:
1) The .
in ".c"
被忽略,你需要“转义”它:
ls(pattern="\\.c")
否则它将返回所有对象c
无论是否有月经。
2) ls
以字符形式返回对象名称。要根据对象的名称获取对象的值,您需要该函数get
:
lapply(ls(pattern="\\.c"), get)
3)正如 joran 在评论中提到的,最好在列表中保持对象相互关联:
List.c = list(a.c=1, b.c=2, c.c=3, d.c=4)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)