3.2 改变对象长度

一个“空”的对象仍然有其模式的。例如

> e <- numeric()

创建了一个数值模式的空向量结构 e。类似的是,character() 是一个空的字符向量, 等等。一旦一个任意长度的对象被创建,新元素可以通过给定一个在先前索引范围外 的索引值1而加入。因此

> e[3] <- 17

将创建一个长度为3的向量 e (此时,前两个元素都是 NA )。这可以用于任何数据结构, 并且提供了一种添加和第一个位置的对象模式一致的对象的方式。

这种自动调整对象长度的方法是经常用到的,如等待输入的函数 scan()。( scan() 函数)

相反,删减一个对象的大小只需要用赋值操作。因此,如果 alpha 是一个长度为10的对象,那么

> alpha <- alpha[2 * 1:5]

将创建一个由偶数索引位值上的元素构成的长度为5的对象(此时,老的索引将会被抛 弃)。我们可以用下面命令仅仅保留起始的三个值

> length(alpha) <- 3

一个向量也可以用同样的办法扩充(扩充部分用缺损值)。


results matching ""

    No results matching ""