Mittelwerte und Abspeichern der Zwischenwerte in Schleife?
Met03
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 15:18
Titel : Mittelwerte und Abspeichern der Zwischenwerte in Schleife?
Hallo!
Ich habe schon wieder eine Frage. Da das beim ersten Mal so super geklappt hat, dachte ich, ich versuche es nochmal.
Ich habe folgende Schleife, die jeweils gewisse Zeilen aus meiner ursprünglichen Datei [name,height,ave,vel,Abstand] :
k 1 2 2 3
h 2 3 2 6
j 3 4 3 7
h 2 5 3 8
heraussucht.
Code:
function r = programm( Radius)
[ name,height,ave,vel,Abstand] = textread ( winddata,'%s %f %f %f %f ') ;
for j = 1 :Mradiusfix
for i = 1 :length ( Abstand)
if Abstand( i) <=Radius*j
k( i,:) =height( i) ;
h( i,:) =ave( i) ;
s( i,:) =vel( i) ;
else
k( i,:) =NaN ;
h( i,:) =NaN ;
s( i,:) =NaN ;
end
end
% Löschen der NaN´s aus den Spalten
a=k( ~isnan ( k) ) ;
b=h( ~isnan ( h) ) ;
o=s( ~isnan ( s) ) ;
A=[ a b o]
Als Ergebnis bekomme ich dann z.B.
A =
1 2 2
A =
1 2 2
2 3 2
A =
1 2 2
2 3 2
3 4 3
2 5 3
usw.
Mein Problem liegt jetzt darin, dass wenn ich den Mittelwert Spaltenweise von A berechnen möchte mit
dann bekomme ich für w:
A = 1 2 2
w = 1.6667 !!!!!!!!!!!!!
A =
1 2 2
2 3 2
w = 1.5000 2.5000 2.0000
A =
1 2 2
2 3 2
3 4 3
2 5 3
w = 2.0000 3.5000 2.5000
usw.
für den ersten Fall !!!!!!!! den Mittelwert über alle Spalten 1.6667 und nicht wie im zweiten und dritten Fall den Mittelwert für jede Spalte.
Eigentlich sollte
w= 1 2 2
als Ergebnis herauskommen.
Hat jemand eine Idee, wie ich für den Fall, auch den richtigen Mittelwert für die einzelnen Spalten bekommen kann?
Kann mir dazu vielleicht auch noch jemand erklären, wie ich die Zwischenergebnisse der Mittelwerte in der Schleife, also in diesem Fall wäre das
1. w = 1 2 2
2. w = 1.5000 2.5000 2.0000
3. w= 2.0000 3.5000 2.5000
usw.
in einer extra Matrix ungefähr so
M =
1.0000 2.0000 2.0000
1.5000 2.5000 2.0000
2.0000 3.5000 2.5000
abspeichern kann.
Sorry für die ganzen Fragen.
Wäre aber super, falls mich jemand versteht und mir helfen kann.
Danke.[code]
LG
Met02
Andreas Goser
Forum-Meister
Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
Verfasst am : 29.01.2009, 16:19
Titel :
denny
Supporter
Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
Verfasst am : 29.01.2009, 16:23
Titel :
Hallo,
einfach mean mit 2 Parametern aufrufen.
2.Parameter steht für Dimension(ob Mittelwert Spaltenweise oder Zeilenweise gebildet werden soll)
Andreas Goser
Forum-Meister
Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
Verfasst am : 29.01.2009, 16:24
Titel :
Und das andere: Probier' mal.
Wobei im echten Code die Ergebnismatrix in der maximalen Grösse vorbelegt werden sollte (schneller) und statt der "n" natürlich eine Laufvariabe genommen wird.
Andreas
Met03
Themenstarter
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 16:27
Titel :
Hi!
Ja, das war ja einfach mit dem mean.
Hat gleich geklappt, vielen Dank!
das andere versuche ich gleich mal...
LG Met02
Met03
Themenstarter
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 16:33
Titel :
Hi!
Äh, wo genau platziere ich denn
Dieser code ist zum Speichern, oder?
Danke.
LG Met02
Met03
Themenstarter
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 16:35
Titel :
Hi!
Ich nochmal.
In der Matrix A sollen die mean Werte der Zwischenergebnisse abgespeichert werden.
Geht das mit
LG
Andreas Goser
Forum-Meister
Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
Verfasst am : 29.01.2009, 16:43
Titel :
Ich meinte diesen Kunde nur als Test wie man aus einem Vektor 1x3 eine Matrix 2x3 macht. "In Echt" braucht es ungefähr diese Syntax:
Met03
Themenstarter
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 16:56
Titel :
Entschuldigung, jetzt bin ich irritiert.
wofür ist jetzt der letzte code?
Für den spaltenweise Mittelwert oder zum Abspeichern?
Für den spaltenweise Mittelwert habe ich
einfach eingefügt und es kommt das Richtige raus, geht das nicht?
welcher code ist jetzt zum Abspeichern, so dass ich eine Matrix mit den ganzen berechneten Mittelwerten erhalte?
Danke schonmal für die Geduld.
Met02
Andreas Goser
Forum-Meister
Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
Verfasst am : 29.01.2009, 17:07
Titel :
Der Code ist zum Abspeichern der Mittelwerte. A wäre der jeweilige Mittelwert, B ist die Gesamtmatrix.
Met03
Themenstarter
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 17:36
Titel :
Das klappt irgendwie nicht, da kommen für B mrkwürdige Werte, kann das irgendwie nicht in meine Schleife einbauen.
Könntest du mir sagen wo ich das in die Schleife einbaue und wie?
Danke.
Zuletzt bearbeitet von Met03 am 29.01.2009, 18:03, insgesamt einmal bearbeitet
Met03
Themenstarter
Forum-Anfänger
Beiträge: 19
Anmeldedatum: 28.01.09
Wohnort: ---
Version: ---
Verfasst am : 29.01.2009, 17:38
Titel :
Ok, habe das Problem gelöst, dankefür eure Hilfe!!!!!
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
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2025
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.