Bonjour
Pour le moment ce que tu fais c'est qu'à chaque passage dans ta boucle for tu écrases la valeur de Mmens par la valeur du mois suivant. De plus, je te conseille très vivement de remplacer l'une de tes variables de boucle i par une autre variable afin d'éviter les confusions (par exemple remplacer le premier i par un j?
Ce que tu peux faire, c'est initialisé ton tableau de la sorte:
Mmens(1:12,1) = 1:12; %Première colonne de ton tableau : repère du mois
puis pour créer ton tableau tu peux faire de cette manière: (Attention, je ne sais pas si tu désires une colonne par fichier, on ne sait pas trop à quoi correspondent tes var
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
| liste = dir;
for j = 3:399; %tu peux remplacer ton 399 par length(dir)-2 si tu veux balayer tout ton répertoire
Name = liste(i).name;
A = dataset('File',Name);
if(length(A) >= 3650);
Mann = mean(A.Qm3s); %ceci a t'il une utilité dans ce que tu cherches à faire?
for i = 1:12;
Mmens(i,j-1) = mean(A.Qm3s(find(A.Mois==i))); % i pour chaque ligne de ton tableau (tu as douze lignes, une par mois)
% j pour chaque fichier de ton répertoire, étant donné que ton j est initialisé à trois et que ta première % colonne contient le repère du mois, on commence à remplir à partir de la 2eme colonne soit j-1
end
end
end |
Si tu veux un tableau 2 colonnes, en faisant la moyenne de chaque fichier, tu peux ensuite ajouter après ta boucle:
maSupermoyenne = cat(2,Mmens(:,1),mean(Mmens(:,2:end),2))
Partager