3.4 增加或删除矩阵的行或列
严格来说,矩阵的长度和维度是固定的,因此不能增加或删除行或列。但是可以给矩阵重新赋值,这样可以得到和增加或删除一样的效果。
3.4.1 改变矩阵的大小
回忆之前通过重新赋值改变向量大小的方法:
第一个例子里,x原来长度为5,通过拼接和重新赋值,将其长度变为6。事实上我们没有改变x的长度,而是生成一个新的向量,然后赋值给x。
注意 重新赋值的过程可能会在用户看不见的情况下进行,在14章我们将会介绍。例如,即使是x[2]<-12这种小操作事实上都是一个重新赋值的过程。
类似的操作可以用来改变矩阵的大小。例如,函数rbind()(代表row bind,按行组合)和函数cbind()(代表column bind,按列组合)可以给矩阵增加行或列。
这里,cbind()把一列由1组成的向量和z组合在一起,创建了一个新矩阵。上面我们只是直接输出了结果,实际上也可以把这个新的矩阵赋值给z(或其他变量),如下所示: