2016-07-18 17 views
0

Ich arbeite derzeit an einem Projekt, das lange csv-Dateien enthält. Ich habe eine for-Schleife, die verschiedene Werte in der Zeitspalte trennt und dann das Maximum in jedem Zeitabschnitt findet (es gibt viele Datenpunkte für jeden Zeitpunkt). Ich möchte die Daten entweder als .csv oder .dat speichern, aber ich kann nur scheinen, entweder den ersten oder den letzten Wert zu speichern. Wie kann ich bei jedem Durchgang durch die Schleife eine Oktave zum Speichern von Daten in einer neuen Zeile erhalten?Octave: Speichern von Dateien in einer Schleife

+1

Sie die '-append' Option verwenden, wie auf dem Hilfetext von' dlmwrite dokumentiert() ' – carandraug

Antwort

1

Wenn Sie nicht allzu sehr daran interessiert sind, in jede Schleife, die normalerweise langsam ist, in eine Datei zu schreiben, können Sie Daten in einer Variablen sammeln und Daten auf einmal schreiben.

 X = []; 

    for i = 1:100, 
      X = [X;i]; //instead of i you can use row vectors 
    end  

    save("myfile.dat",'X');  

Und wenn Sie auf Schleifen scharf sind dann verwenden '-append' Option

 X = []; 
     for i = 1 : 10, 
     save("-append","myfile.dat",'i'); 
     end