函数参数可以调用列表/数据框架中的元素吗?



我对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