使用不同的索引从向量添加元素

时间:2014-04-14 19:53:25

标签: r

给出两个向量x,y:

x <- c( 1.0, 2.0, 3.0, 4.01, 5.12, 9.59)
y <- c( 0.1, 0.2, 0.3, 0.78, 0.45, 6.78)

在使用向量运算的R符号中(不是用于循环),如何将y除以x的某个子集的总和,其中我指定了索引:

y / ( x[1] + x[2] + x[3] + x[4] )

这与手动取y / 10.01并返回矢量长度y相同。我尝试过使用seq()和子集,但不知道。

1 个答案:

答案 0 :(得分:3)

可能使用sumhead函数:

> y/sum(head(x, 4))
[1] 0.00999001 0.01998002 0.02997003 0.07792208 0.04495504 0.67732268

您也可以使用seq

y/sum(x[seq(4)])

与@ Rcoster的评论y / sum(x[1:4])

相同