我刚开始学习R编程。查看了一些教程后,我掌握了大部分需要的知识,但仍有一件事情不清楚:数据结构图。
请问R语言是否有字典?我能否将键值对存储在其中?
谢谢!
我刚开始学习R编程。查看了一些教程后,我掌握了大部分需要的知识,但仍有一件事情不清楚:数据结构图。
请问R语言是否有字典?我能否将键值对存储在其中?
谢谢!
> x <- list(a=1, b="foo", c=c(1,1,2,3,5))
> x
$a
[1] 1
$b
[1] "foo"
$c
[1] 1 1 2 3 5
pairlist
函数。 - IRTFM环境也是一个备选项,在许多情况下是最佳选择。
e<-new.env(hash=T)
e$a<-1
e$b<-2
R> e$a
[1] 1
由于数组/向量元素可以被命名,因此您可以获得一些内置的映射/字典属性。
x <- c(apple = 1, banana = 99, "oranges and lemons" = 33)
x["apple"]
x[c("bananas", "oranges and lemons")]
x[x == 99]
list
而不是向量。如前所述,哈希包确实会增加一些开销,但提供了一种灵活、直观的访问映射/哈希/字典的方法。对于来自其他语言的用户来说,理解它应该非常容易。
如果列表元素较少(<200左右),则列表是最佳解决方案。
如果您绝对不能容忍一点开销,并且不想要灵活、直观的方法,则最好使用环境。
在大多数情况下,哈希包是最好的选择。
C-
dict
是存储(键,值)对的数据结构。map(somefn,someseq)
是一个函数,它将somefn
应用于someseq
*中的每个元素。 - smci