全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 R语言论坛
10995 4
2009-11-19
比如,

1:4
2:7
4:10
2:8
7:12

五个向量相加,长度不够的按0算。
怎么求?

有下面这个方法
长度不等的向量相加
a=1:2
b=1:3
c=c(a,rep(0,length(b)-length(a)))+b
c

但是向量比较多的话这么算很烦。

有其他号方法吗?
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2009-11-20 13:14:07
一个简单的方法就是使用循环做,首先找出最长的向量,这里为b,然后把其他向量逐个加到b里去,
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2015-6-28 17:00:22
a<-1:3
b<-2:10
d<-rep(0,length(a)*length(b))
e<-(a+d)+(d+b)
e<-e[1:length(b)]

其实可以不用循环,首先定义第三个向量,值为0,长度为两个向量长度的乘积。
然后分别相加,再取长度最长的向量的长度。
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-11-21 21:56:18
五个向量相加,长度不够的按0算。代码还不完全符合要求
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2018-11-21 22:41:03
复制代码


转换得到的df:
复制代码


最终结果:
复制代码
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群