I 2 Vektoren habenFügen Sie jedes Element des Vektors zu einem anderen Vektor
x <- c(2,2,5)
y <- c(1,2)
Ich möchte jedes Element der Vektoren addieren
[1] 3 3 6 4 4 7
zu bekommen Wie kann ich das tun?
I 2 Vektoren habenFügen Sie jedes Element des Vektors zu einem anderen Vektor
x <- c(2,2,5)
y <- c(1,2)
Ich möchte jedes Element der Vektoren addieren
[1] 3 3 6 4 4 7
zu bekommen Wie kann ich das tun?
Wir outer
mit FUN
verwenden können, als +
c(outer(x, y, `+`))
#[1] 3 3 6 4 4 7
Sie können versuchen, jedes Paar von x/y-Elemente mit expand.grid
erstellen und dann die Zeilensummen Berechnung:
rowSums(expand.grid(x, y))
# [1] 3 3 6 4 4 7
Oder können Sie versuchen:
as.vector(sapply(y,function(i) (i+x)))
Y ou können auch Variationen von rep
mit +
verwenden:
rep(x, length(y)) + rep(y, each=length(x))
[1] 3 3 6 4 4 7
Das zweite Argument für die +
jedes Argument zu rep
verwendet, die jedes Element von Y wiederholt auf die Länge von x entspricht.