《R语言编程艺术》——3.4 增加或删除矩阵的行或列

本文介绍了在R语言中如何通过赋值实现矩阵的行或列增加和删除效果,重点讲解了使用rbind()和cbind()函数。此外,通过一个扩展案例展示了如何在矩阵中寻找最近距离的端点,利用apply()和imin()函数处理对称距离矩阵,优化算法以提高效率。
摘要由CSDN通过智能技术生成

3.4 增加或删除矩阵的行或列

严格来说,矩阵的长度和维度是固定的,因此不能增加或删除行或列。但是可以给矩阵重新赋值,这样可以得到和增加或删除一样的效果。
3.4.1 改变矩阵的大小
回忆之前通过重新赋值改变向量大小的方法:
image

第一个例子里,x原来长度为5,通过拼接和重新赋值,将其长度变为6。事实上我们没有改变x的长度,而是生成一个新的向量,然后赋值给x。
注意 重新赋值的过程可能会在用户看不见的情况下进行,在14章我们将会介绍。例如,即使是x[2]<-12这种小操作事实上都是一个重新赋值的过程。
类似的操作可以用来改变矩阵的大小。例如,函数rbind()(代表row bind,按行组合)和函数cbind()(代表column bind,按列组合)可以给矩阵增加行或列。
image

这里,cbind()把一列由1组成的向量和z组合在一起,创建了一个新矩阵。上面我们只是直接输出了结果,实际上也可以把这个新的矩阵赋值给z(或其他变量),如下所示:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值