R: Aplicar función a matriz con elementos de vector como argumento

Supongamos que quiero aplicar una función a cada fila de una matriz. Uno de los argumentos de la función toma un vector. Me gustaría aplicar el primer elemento del vector a la primera fila, el segundo elemento a la segunda fila, etc.

Por ejemplo:

set.seed(123)
df<-matrix(runif(100), ncol=10)

var2 <- c(1:10)

MYFUNC <- function(x, Var=NA){ 
  sum(x)/Var 
}

Intenté esto:

apply(df, 1, function(x) MYFUNC(x, Var=var2))

Pero eso me da una matriz de 10x10 con la función aplicada a cada combinación de fila y Var, mientras que solo estoy interesado en los elementos diagonales. También miré en elmapply función, pero no estoy seguro de cómo aplicarlo en este caso.

Cualquier ayuda sería muy apreciada.

Respuestas a la pregunta(2)

Su respuesta a la pregunta