|
|
Datei mit 6 Headerzeilen und Daten einlesen |
|
Kopi |
Forum-Anfänger
|
|
Beiträge: 43
|
|
|
|
Anmeldedatum: 28.09.08
|
|
|
|
Wohnort: weit weg von der Heimat
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 17.10.2020, 17:36
Titel: Datei mit 6 Headerzeilen und Daten einlesen
|
|
|
|
|
Hallo,
vielleicht könnt Ihr mir weiterhelfen. Ich habe mehrere Dateien mit Radardaten die immer gleich aufgebaut sind (--> Erläuterung):
ncols 100 --> Wieviel Spalten sind ab Zeile 7
nrows 100 --> Wieviel Zeilen sind ab Zeile 7
xllcorner 123456 --> Beginn Raster x - Koordinate
yllcorner 7896541 --> Beginn Raster y - Koordinate
cellsize 500 --> Kantenlänge eines Rasters
NODATA_value -9999 --> Raster ohne Daten
Zeilen mit ganzen Zahlen (Matrix 100x100)
Ob ich mit dem folgenden Code die richtige Wahl getroffen habe, um die Dateien richtig zu lesen, sein noch dahingestellt.
Jetzt wollte ich die Daten mit sscanf lesen. Leider kann der Befehl keine Strings lesen. Muss er auch nicht. Ich muss es nur schaffen, dass die Strings in den ersten sechs Zeilen übersprungen werden.
Mit diesem Code werden die Zahlen der zweiten bis zur letzten Zeile eingelesen, nicht aber die erste. Wenn ich die 1 gegen eine 0 ersetze, ist die Variable TEST leer.
Wie kann ich auch die erste Zeile einlesen?
Wie werden die Daten ab Zeile 7 am besten aus "s" gelesen. Dafür müsste ich wissen, welche Position die -9999 hat. Mit einer logischen Funktion wie
bekomme ich zwar meine 1 in einer Matrix aber leider sind immer noch Nullen dazwischen, die ich mir nicht erklären kann.
Der Code soll variabel sein. Deswegen möchte ich die ersten 6 Zeilen einlesen und nicht einfach ab der Zeile 7 die Daten einlesen.
Grüße
Kopi
Beschreibung: |
Der Name der Datei lautete *.asc. Habe diesen in *.txt geändert, um die Datei hochladen zu können. |
|
Download |
Dateiname: |
2000_01_01_00_25_KOM_cccc.txt |
Dateigröße: |
21 KB |
Heruntergeladen: |
290 mal |
Zuletzt bearbeitet von Kopi am 17.10.2020, 18:38, insgesamt 2-mal bearbeitet
|
|
|
|
|
Kopi |
Themenstarter
Forum-Anfänger
|
|
Beiträge: 43
|
|
|
|
Anmeldedatum: 28.09.08
|
|
|
|
Wohnort: weit weg von der Heimat
|
|
|
|
Version: R2020b
|
|
|
|
|
|
Verfasst am: 17.10.2020, 17:46
Titel:
|
|
Ich habe den Fehler gefunden. Echt dumm. Die erste Zeile wird beim Einlesen gelöscht mit "fgetl". So kann ich auch nicht die erste Zeile finden.
Könnt Ihr mir beim zweiten Teil der Frage helfen? Wie finde, ich die erste Zahl nach dem Header? Mit dem Folgenden Code lese ich alle Daten ein.
|
|
|
|
|
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 - 2024
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.
|
|