2.1.11 成对列表对象

Keywords:

Next: ,Previous: Environment objects,Up: Basic types

2.1.11 成对列表对象

成对列表对象和 Lisp 的点-对列表(dotted-pair list)类似。它们广泛用于R的内部。但很少见于解释型的代码里面,尽管它们被 formals 返回或通过函数pairlist创建。一个零长度的成对列表是NULL,这和 Lisp 期望的一样但与零长度列表不一样。每个这样的对象有三个槽变量,CAR值,CDR值和TAG值。TAG值是文本字符串,CAR和CDR分别表示一个以空对象作为终结符的列表的列表项目(头)和剩余项目(尾)(CAR/CDR术语是传统Lisp术语,最初用于60年代 IBM 电脑的寄存器)。

R 语言里面成对列表的操作和广义向量(“列表”)完全一样。特别的是,元素也是通过 [[]] 方式访问。由于广义向量可以更为高效地应用,一般不赞同使用成对列表。如果通过 R 访问一个内部的成对列表,我们常常把它转换成广义向量(包括取子集的操作)。

在很少情况下,用户可以看到成对列表:其中一个例子是 .Options

Hits:Loading...

special topic