相当于R中的一个python字典

我想在R中做一个python字典。基本上,在python中我有:

visited = {} if atom_count not in visited: Do stuff visited[atom_count] = 1 

这个想法是,如果我看到具体的,atom_count,我已经访问[atom_count] = 1。因此,如果我再次看到atom_count,我不“做东西”。 Atom_Count是一个整数。

谢谢!

R中最接近Python的字典只是一个列表。 像大多数R数据types一样,列表可以具有一个名称属性,可以允许列表像一组名称 – 值对一样操作:

 > l <- list(a = 1,b = "foo",c = 1:5) > l $a [1] 1 $b [1] "foo" $c [1] 1 2 3 4 5 > l[['c']] [1] 1 2 3 4 5 > l[['b']] [1] "foo" 

现在是通常的免责声明:他们不完全一样; 会有分歧。 所以,你会失望地试图按照你在python中使用dict的方式来使用列表。

我相信使用一个哈希表(创build一个新的环境)可能是解决您的问题。 我会input如何做到这一点,但昨天我在talkstats.com就这样做了。

如果你的字典很大,只有两列,那么这可能是要走的路。 以下是带有示例R代码的talkstats线程的链接:

哈希表链接