Konvertieren von ASCII-Windgeschwindigkeitsdateien in Raster


11

Ich habe versucht, Windspeed-Dateien ohne Erfolg in Raster zu konvertieren. Es wurde in einem Arcgis-Forum diskutiert, dem ich folgte. Dies beinhaltete das Ersetzen von Semikolons durch Leerzeichen und das Hinzufügen einer Kopfzeile.

Ich hatte gehofft, eine der ursprünglichen .asc-Dateien zusammen mit einer .csv-Version, die ich "bereinigt" habe, einbinden zu können. Leider kann ich nicht sehen, wie das geht, ohne den Text zu kopieren und einzufügen. Die erste Zeile der ursprünglichen .asc-Datei lautet:

Conversion of speed45i.dat   Wind m/s  Wind Speed @ 45m N. Ire 
(100,  499); 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 0.0; 

Ich habe dies geändert in:

ncols 700
nrows 1300
x||corner 0
y||corner 0
cellsize 1000                                                                                               "
"( 0 1299) 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 ;"

Wenn ich das Plug-In für das Rasterübersetzungs-Konvertierungsformat verwende, wird folgende Fehlermeldung angezeigt:

Der Prozess konnte nicht gestartet werden. Entweder fehlt das aufgerufene Programm, oder Sie haben möglicherweise nicht genügend Berechtigungen, um das Programm aufzurufen.

Anregungen dankbar erhalten.


Sie können jederzeit versuchen, ein Beispiel in DropBox einzufügen und einen Link freizugeben , wenn Sie eine spezifischere Hilfe für das jeweilige Dataset benötigen .
RyanKDalton

Antworten:


14

Ich kenne diese Daten sehr gut. Dies sind die leicht berüchtigten NOABL-Windgeschwindigkeitsdaten. Sie sind jedoch auch auf dem richtigen Weg, wenn Sie sie in ein ASCII-Raster konvertieren. Der Header, den ich vor vielen Jahren für sie erstellt habe, war wie folgt:

ncols 700
nrows 1300
xllcorner 0
yllcorner 0
cellsize 1000
nodata_value -999
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

Es sieht so aus, als hätten Sie Pipe-Symbole ('|') anstelle von 'l' für xll und yll in der Kopfzeile verwendet (die für 'unten links' stehen). Verlieren Sie auch die Zahlen in Klammern am Anfang jeder Zeile und die Anführungszeichen. Machen Sie es einfach platzsparend. Die Zahlen in Klammern (wie Sie sicher schon herausgefunden haben) geben die 100-Kilometer-Startkoordinaten der Datenzeile an (bei einer Auflösung von 1 km - es gibt also hundert Werte nach jedem Satz von Klammern). Diese Nummern sind in einem ESRI-ASCII-Raster nicht nur redundant, sondern brechen es auch.

CAVEAT:
Verwenden Sie diese Daten mit Vorsicht. Sie sind sehr alt und wurden von einer winzigen Handvoll Wetterstationen interpoliert, die in ganz Großbritannien verteilt sind. Sie wurden auch interpoliert, ohne die Oberflächenrauheit und die meisten anderen Faktoren zu berücksichtigen, die die Windgeschwindigkeit auf lokaler Ebene beeinflussen. Sie sind als grobe Richtlinie in Ordnung, aber bekannt dafür, dass sie die Windgeschwindigkeit an vielen Orten überschätzen. Zum Beispiel finde ich regelmäßig, dass die NOABL-Windgeschwindigkeit von 45 m häufig mit Windgeschwindigkeiten vergleichbar ist, die mit einem Windmesser in Höhen von 80 m gemessen werden. Da NOABL jedoch keine Daten von den Nordinseln verwendet hat, habe ich festgestellt, dass NOABL die Windgeschwindigkeiten in diesem Fall zutiefst unterschätzt Shetland. Der nördlichste der wenigen Met-Stationen (nur 10, glaube ich!) In den NOABL-Daten war Wick.

Abgesehen von allen Warnungen habe ich jedoch festgestellt, dass ich, wenn ich die Überschätzung (und ein wenig Erfahrung) mit Bedacht verstanden habe, Ergebnisse von Berechnungen der Windparkerträge unter Verwendung dieser Daten als vergleichbar mit Berechnungen unter Verwendung aktuellerer und streng gesammelte Daten. Nehmen Sie das jedoch nicht als Evangelium, da jeder Ort anders ist und die tatsächliche Windgeschwindigkeit stark von Rauheit, offener Reichweite und Topographie beeinflusst wird, um nur einige Faktoren zu nennen.

Wenn die Windgeschwindigkeit für Ihr Projekt von entscheidender Bedeutung ist, verwenden Sie dies auf jeden Fall als Ausgangspunkt, aber setzen Sie die Farm nicht darauf!

BEARBEITEN
Um die Zahlen in Klammern zu entfernen, können Sie ein Python-Skript schreiben, um die Daten zu analysieren. Eine einfache Alternative ist:

  • Öffnen Sie die Datei in einem Texteditor, löschen Sie die erste Zeile (" Conversion of Speed ​​... "), ersetzen Sie global alle Leerzeichen durch nichts und speichern Sie sie erneut mit der Erweiterung '.csv'.
  • Öffnen Sie als Nächstes in einem Tabellenkalkulationspaket das Semikolon als Semikolon (in Excel und OpenOffice Calc werden Sie beim Öffnen der Datei gefragt). Wählen Sie nun die erste Spalte aus, die alle in Klammern gesetzten Zahlen enthält, und löschen Sie sie.
  • Fügen Sie gleich zu Beginn sechs Zeilen ein und fügen Sie Ihren Header hinzu ("ncols 700" usw.).
  • Speichern Sie abschließend mit der Erweiterung '.asc', stellen Sie jedoch sicher, dass Ihr Trennzeichen ein Speicherplatz zum Speichern ist.

Sylvester, vielen Dank. Probleme beim Entfernen der Zahlen in Klammern. Sollten die ersten Zeilen wie folgt aussehen? nrows 1300 xllcorner 0 yllcorner 0 Zellengröße 1000 nodata_value -999 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0 0,0
Tedwalsh

@tedwalsh: das ist so ziemlich alles. Ich habe meine Antwort oben bearbeitet, um den größten Teil der ersten Zeile zum 'Code'-Beispiel hinzuzufügen. Ich habe auch Anweisungen zum einfachen Entfernen der Klammern hinzugefügt. Wenn Sie immer noch Probleme haben, senden Sie mir eine PM mit Ihrer E-Mail-Adresse (siehe Abschnitt "Kontakte" auf meiner Website), und ich werde etwas für Sie erledigen.
MappaGnosis

1
Der NOABL-Datensatz war für seine Zeit ziemlich ordentlich, aber diese Zeit war vor fast 20 Jahren. Ich erinnere mich, dass ich damals auch daran gearbeitet habe. Am besten nicht für echte Arbeiten in typischen Windkraftanlagenhöhen verwenden.
Scruss

11

Der NoData-Wert fehlt in Ihrer ASCII-Datei und Sie haben x || und y || anstelle von xll und yll. Ich gehe davon aus, dass Ihre NoData -999 ist.

Versuche dies:

NCOLS 700
NROWS 1300
XLLCORNER 0
YLLCORNER 0
CELLSIZE 1000
NODATA_VALUE -999

Ihr in einem Texteditor geöffneter ASCII sollte folgendermaßen aussehen:

NCOLS 700
NROWS 1300
XLLCORNER 0
YLLCORNER 0
CELLSIZE 1000
NODATA_VALUE -999
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 

2
In Bezug auf das Format sieht dies korrekt aus, aber ich denke, es kann ein schwerwiegender Fehler sein, Null mit einem NoData-Wert zu verschmelzen. Eine Null wird benötigt, um eine Windgeschwindigkeit von Null anzuzeigen, während ein NoData-Wert das Fehlen von Informationen über die Windgeschwindigkeit anzeigen würde.
whuber

Ich nahm an, dass die NoData 0 war, da @tedwalsh diese Informationen nicht gab.
Gago-Silva
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.