Ich habe ein Shapefile, das Thiessen Polygone darstellt. Wie konvertiert man automatisch viele Felder eines Polygon Shapefile in R
Jedes Polygon ist mit vielen Werten einer Tabelle verknüpft.
thiessen <- readOGR(dsn = getwd(), layer = poly)
OGR data source with driver: ESRI Shapefile
Source: ".../raingauges/shp", layer: "thiessen_pol"
with 10 features
It has 5 fields
head(thiessen)
est est_name p001 p002 p003
0 2 borges 1 8 2
1 0 e018 2 4 3
2 5 starosa 5 15 1
3 6 delfim 4 2 2
4 1 e087 1 1 3
5 3 e010 0 1 0
die Spalte 'est' und 'est_name' auf die ID und den Namen der regen Lehren in Zusammenhang stehen. Die folgenden Spalten sind für mich wichtig und stellen Niederschlagswerte an Tag 1, 2 usw. dar (im Beispiel habe ich nur drei Tage behalten, aber tatsächlich habe ich 8 Jahre täglich Niederschlagsdaten).
Ich muss die Polygone in Raster konvertieren, aber ein Raster für jedes Feld (Spalte p001, p002 usw.) der Tabelle.
Es gibt eine einfache Möglichkeit, um Polygone zu konvertieren mit der Funktion rasterize in R. rastern
r_p001 <- rasterize(thiessen, r, field = thiessen$p001)
plot(r_p001)
writeRaster(r_p001, filename=".../raingauges/shp/r_p001.tif")
Das Problem ist, dass ich manuell das Feld (Spalte) der Tabelle festlegen muß mit den Polygonwerten, die in Raster konvertiert werden sollen. Da ich ungefähr 2900 Tage habe (2900 Spalten mit Niederschlagswerten für jeden Regenmesser), ist es unmöglich, dies manuell zu tun.
Die Dokumentation hilft nicht zu klären, wie man diesen Prozess automatisieren kann und ich habe nichts im Internet gefunden, um mir zu helfen.
Kann jemand jedes Feld automatisch in Raster konvertieren und als tif Format speichern? Hier
Es ist sehr schwierig, Ihnen ohne ein reproduzierbares Beispiel zu antworten. Das heißt, Sie könnten eine Funktion schreiben und eine Schleife ausführen oder wiederholen, um eine Sequenz in eine Tabelle zu schreiben und die 2900 Zeilen in ein Skript einzufügen. –