Hallo liebes Forum,
ich nutze R um darüber SAGA-GIS Prozesse zu automatisieren. Dies anhand von for-Schleifen.
Ich möchte mehrere Grids reinladen und mit diesen Berechnungen durchführen.
Mit der Paste Funktion kann ich mehrere Grids reinladen.
z.B.: beim Reklassifizieren klappt das
for (i in 1:length(Grid))
{rsaga.geoprocessor("grid_tools",15,env=myenv,list(INPUT=paste("C:/Users/Desktop/Projekt//Grid",i,".sgrd",sep=""),RESULT=paste("C:/Users/Desktop/Projekt/Grid",i,sep=""),METHOD=0,OLD=4,NEW=1,SOPERATOR=3,OTHEROPT=TRUE,OTHERS=-99999))
}
Wenn ich aber eine Berechnung durchführen möchte brauche ich zwei verschiedene Grid als Input. Und das ist mein Problem - Wie geht das?
Hier also der Grid Calculator: Berechung Produkt a*b (Grid1*Grid2)
for (i in 1:length(Grid1 und Grid2))
{rsaga.geoprocessor("grid_calculus",1,env=myenv,list(GRIDS=paste("C:/Users/Desktop/Projekt/Grid1 und Grid2",i,".sgrd",sep=""),RESULT=paste("C:/Users/Desktop/Projekt/neuesGrid-Product",c,sep=""),FORMULA="a*b"))
}
Hoffe mir kann jemand weiterhelfen.
MfG
Moritz
RSAGA - for Schleife
Re: RSAGA - for Schleife
Hallo ich bin es nochmal, eine weitere Frage noch wie kann ich die Schleife dann stoppen, da sie dann weiter springen soll. Das Problem R soll das nur 30mal machen und dann abbrechen. Es läuft momentan noch unendlich weiter. Vielen Dank für die Holfe
Re: RSAGA - for Schleife
Wieso nicht mit R direkt (raster package)? Performanzmäßig gar nicht so schlecht...
Mit ?expand.grid() ein data.frame mit allen Kombinationen vom Grid1 und Grid2 erstellen und Zielenweise mit for drüberlaufen. (oder nur Zeilen 1:30 falls du was willst).1:length(Grid1 und Grid2)
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.