Supposons que j'ai une matrice n par 2 et une fonction qui prend un vecteur 2 comme l'un de ses arguments. J'aimerais appliquer la fonction à chaque ligne de la matrice et obtenir un vecteur n. Comment faire cela en R ?
Par exemple, je voudrais calculer la densité d'une distribution normale standard 2D sur trois points :
bivariate.density(x = c(0, 0), mu = c(0, 0), sigma = c(1, 1), rho = 0){
exp(-1/(2*(1-rho^2))*(x[1]^2/sigma[1]^2+x[2]^2/sigma[2]^2-2*rho*x[1]*x[2]/(sigma[1]*sigma[2]))) * 1/(2*pi*sigma[1]*sigma[2]*sqrt(1-rho^2))
}
out <- rbind(c(1, 2), c(3, 4), c(5, 6))
Comment appliquer la fonction à chaque ligne de out
?
Comment transmettre les valeurs des autres arguments, en plus des points, à la fonction de la manière que vous indiquez ?