|
|
Schleifenbedingtes Martizen füllen |
|
Timme_42 |

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 12.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.08.2014, 07:59
Titel: Schleifenbedingtes Martizen füllen
|
 |
|
 |
|
Hallo zusammen,
ich habe ein Problem und hoffe das Ihr mir helfen könnt.
Das Problem ist folgendes:
Ich habe einige Files (i) mit jeweils Kraft (Y-Achse, =data2) und Weg(A-Achse, data3) verläufen. Es sind also 2 spalten mit 4000 Wertepaaren.
Die (i) Files werden beim einlesen alle geplottet.
[code]
for i=1:length(filepath)
hold on;
[BX] = plot(TDM(i).data(3).values(: ),TDM(i).data(2).values(: ),'color',TDM(i).farbe);
end
Das klappt wunderbar.
Jetzt möchte ich jedes Wertepaar einzeln analysieren und dazu zwei Matrizen erzeugen.
[code]
for j=1:length(filepath) %lenght filepath = i eingelesene Files
Laenge_Vektor=length(TDM(i).data(3).values(: )); % größe der Matritze
FX=zeros(Laenge_Vektor,j); %HIER SOLLEN ALLE WEGSINGNALE REIN
FY=zeros(i,Laenge_Vektor); % HIER SOLLEN ALLES KRAFTSIGNALE REIN
FX(:,j)=TDM(i).data(3).values(: ); %Werte der eingelesen Files in einer Spalte schreiben
end
Als Ergenis bekomme ich zwar die Matritzen FX und FY erzeugt, aber lediglich die letzte Spalte/Zeile ist mit Werten gefüllt und alle vorherigen Zeilen/Spalten sind mit Null belegt. Wo ist mein Fehler?[/code]
Ein weiteres Problem ist die Varianz der Files, manches hat 3900 Wertepaare, manches 4000 etc.
wie muss FX defniert werden, dass die größte Wertepaarzahl die max. Spaltenlänge vorgibt und andere Spalten mit weniger Wertepaaren entsprechend mit Null gefüllt werden?
|
|
|
|
|
PinkySan |

Forum-Anfänger
|
 |
Beiträge: 26
|
 |
|
 |
Anmeldedatum: 28.05.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.08.2014, 10:20
Titel:
|
 |
Moin,
in deiner Schleife überschreibst du immer wieder mit
deine Zielvariable FX. Nur beim letzten Durchlauf wird sie nicht wieder neu überschrieben und daher sind lediglich in der letzten Spalte deine Werte
ich habe zwar die Daten nicht, aber so in etwa könnte es klappen.
P.S.: Achte bitte auf deine Formatierung. Es ist schwer bei dir den Code zu entdecken
|
|
|
Timme_42 |
Themenstarter

Forum-Newbie
|
 |
Beiträge: 2
|
 |
|
 |
Anmeldedatum: 12.08.14
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.08.2014, 10:44
Titel:
|
 |
Hi,
jetzt tritt das Probelm was ich auch schon hatte.
Ich bekomme beide Spalten/Zeilen der Matritze gefüllt, aber mit den immer gleichen Werten. Also Werte aus einer DAtei (ich habe eine potentieller Gleichheit überprüft ).
Dann habe ich deine Speicherallokation in die erste Schelife gepackt:
Das i steht immer für das i-te file welches eingelesen wird.
In ideser konstellation werden z.b. beim einlesen von i=3 Dateien die richtige Anzahl an Spalten und Zeilen angelegt, aber nur die mittlere mit Werten gefüllt.
|
|
|
PinkySan |

Forum-Anfänger
|
 |
Beiträge: 26
|
 |
|
 |
Anmeldedatum: 28.05.13
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 12.08.2014, 12:19
Titel:
|
 |
Jetzt wird der Inhalt von TDM(j).data(2).values in die Spalte FY(:,j) geschrieben. Entspricht denn "filepath" der Anzahl der zu erzeugenden 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
|
|
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.
|
|