je cherche à modifier le code suivant qui me calcule la moyenne entiere d'une colonne et remplace les cellules contenant des données NaN par la valeur moyenne obtenue de telle sorte que maintenant, je me contente de calculer uniquement la moyenne des 60 dernieres valeurs pour ensuite faire les remplacements.comment modifier m(n)=mean(A(~isnan(A(:,n)),n)); de tel sorte que au lieu de calculer la moyenne de la colonne entiere , on calcule uniquement la moyenne des 60 ou 30 ( cela depend plus de l'utilisateur et n'a pas d'importance) dernieres valeurs?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 m=zeros(1,size(A,2)); for n=1:size(A,2) m(n)=mean(A(~isnan(A(:,n)),n)); end m=repmat(m,size(A,1),1); index=isnan(A); A(index)= m(index)
Merci de votre aide.
Partager