gpt4 book ai didi

list - 通过函数参数访问 R 列表元素

转载 作者:行者123 更新时间:2023-12-04 23:31:26 26 4
gpt4 key购买 nike

我有一个如下所示的 R 列表

> str(prices)
List of 4
$ ID : int 102894616
$ delay: int 8
$ 47973 :List of 12
..$ id : int 47973
..$ index : int 2
..$ matched: num 5817
$ 47972 :List of 12
..

显然,我可以通过例如访问任何元素价格$“47973”$id。

但是,我将如何编写一个函数来参数化对该列表的访问?例如带有签名的访问函数:

access <- function(index1, index2) { .. }

可以按如下方式使用:

> access("47973", "matched")
5817

这看起来很微不足道,但我没能写出这样的函数。感谢您的指点。

最佳答案

使用 '[['而不是 '$'似乎有效:

prices <- list(
`47973` = list( id = 1, matched = 2))

access <- function(index1, index2) prices[[index1]][[index2]]
access("47973","matched")

至于为什么这行得通而不是: access <- function(index1, index2) prices$index1$index2 (我假设这是你尝试过的?)这是因为这里 index1index2不予评价。也就是说,它在列表中搜索名为 index1 的元素。而不是此对象的计算结果。

关于list - 通过函数参数访问 R 列表元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6242598/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com