Verfasst am: 28.11.2011, 13:45
Titel: Mittelwerte bilden über versch. Spalten einer Matrix
Hallo Matlab Gemeinde,
ich beschäftige mich derzeit mit einem Problem, wo es gilt in einer Matrix Mittelwerte für jede Zahl aus bestimmten Spalten zu bilden.
Bei der Matrix handelt es sich um eine 15x4 double. Für jede der bestehenden 4 Spalten steht eine Drehzahl, wobei die Drehzahlen für Spalte 2 und 3 identisch sind.
Ich will nun, für jede Drehzahl die 15 Mittelwerte bilden. In meinem Fall würde, das ja bedeuten, dass ich nur zw. Spalte 2 und 3 einen Mittelwert bilden muss, da nur diese Drehzahl mehrfach vorkommt. Bzw. die Mittelwerte der anderen Spalten sind gleich den vorherigen.
Ich hoffe, bis hierhin könnt ihr mich folgen.
Um auf die entsprechenden Spalten in der Matrix zugreifen zu können. habe ich mir vorher ein Cell-Array generiert, wo die Häufigkeit der einzelnen Drehzahlen gespeichert wurde. In meinem Fall {1;2;1}. Dasgleiche habe ich bei der Position innerhalb der Matrix gemacht und die Spaltennummern rausgelesen. {1,[2,3],4}.
Jetzt muss ich es nur irgendwie schaffen, für die jeweiligen zusammengehörendnen Spalten den Mittelwert zu bilden.
Wie kann ich das machen??
Danke schon mal im voraus
Ok, konnte mein Problem selbstständig lösen
Hier mein Lösungsweg!!
Code:
j=1;
i=1;
while j<=length(col)%%%Bilden Des Mittelwertes
for i=1:length(Matrix_advs)
iflength(col(1,j))>1
Matrix_advs_average(i,j)=mean(Matrix_advs(i,col{1,j}):col{1,j(end)});
Matrix_torque_average(i,j)=mean(Matrix_torque(i,col{1,j}):col{1,j(end)});
end
Matrix_advs_average(i,j)=mean(Matrix_advs(i,col{1,j}));
Matrix_torque_average(i,j)=mean(Matrix_torque(i,col{1,j}));
if i==max(length(Matrix_advs));
j=j+1;
i=1;
Der zweite Parameter im mean-Befehl bestimmt die Dimension der Matrix, über welche die Mittelwerte bestimmt werden (über Zeilen/Spalten).
Einstellungen und Berechtigungen
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.