Bonjour à vous.
J'ai écrit une fonction qui prend en paramètre une matrice et un vecteur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
 
fun=function(Mat,X){
 # Mat matrice à  n lignes et p colones
  # X Vecteur de taille p
  m=t(Mat)-X 
     sol=t(m)  
   return(sol)
 
}
Soient la matrice Mat et le vecteur X suivants
je desire faire une soustraction entre chaque ligne de la matrice et le vecteur X.
Exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
Mat=matrix(1:9,3,3)
  Mat
     [,1] [,2] [,3]
[1,]    1    4    7
[2,]    2    5    8
[3,]    3    6    9
 
X=c(2,0,1)
 
fun(Mat,X)
     [,1] [,2] [,3]
[1,]   -1    4    6
[2,]    0    5    7
[3,]    1    6    8
pour l'instant je veux modifier cette fonction de tel sorte qu'a la place du vecteur X je prenne plutot une matrice M à q lignes et p colones q<n et pour chaque ligne de M realise la meme opération que celle ce la fonction ci dessus

La difficulté pour moi est que je ne veux pas utiliser la boucle pour enfin optimiser mon programme.

Merci de votre aide