我对R很陌生,这可能是一个简单的问题,所以抱歉!让我举一个简单的例子来确保我的问题更清楚。
假设我创建一个列表
testlist = list(a = 1:3, b = 4:6, c= 7:9)
print(testlist)
$a
[1] 1 2 3
$b
[1] 4 5 6
$c
[1] 7 8 9
我想创建一个函数,您输入a, b或c,它返回与所选元素相关的值。我试过的是
testfunc = function(element){
d = testlist$element
return(d)
}
无论放入什么元素,函数都会返回NULL。我应该如何改变函数,使(元素)中输入的任何东西都放在$之后?
我们可以用[[
代替$
testfunc = function(element){
d = testlist[[element]]
return(d)
}
测试
> testfunc("a")
[1] 1 2 3