我是R的初学者并尝试编写R函数。我写的功能就像这样
male <- c(1:10)
female <- c(11:20)
msum <- function(h,j) {
for(i in 1:length(h)){
e <- c()
e[i] = h[i] + j[i]
i = i+1
}
e
}
现在当我通过p <- msum(male, female)
调用函数时,我将输出作为长度为10的向量,结果为男性和女性向量的总和,但我得到的是长度为10的向量{{1作为前9个位置的值,30作为向量的最后一个值。我哪里错了?
答案 0 :(得分:0)
请参阅:
male <- c(1:10)
female <- c(11:20)
msum <- function(h,j) {
e <- c()
for(i in 1:length(h)){
e[i] = h[i] + j[i]
}
e
}
msum(male, female)
[1] 12 14 16 18 20 22 24 26 28 30
答案 1 :(得分:0)
我可能会遗漏一些东西,但我不知道你需要一个用户定义的函数来做这个例子:
male + female
虽然我想你可以把它包装成一个函数:
vect_sum <- function(vec1, vec2) {
vec1 + vec2
}
vect_sum(male, female)