Ich verwende R für GIS-Anwendungen mit spatstat und verwandten Paketen. Ich möchte einen Kerndichte Raster erzeugen, die ich schon dabei mit dem folgenden gelungen:R: Numerische Ausgabe von der Dichte()
spatialgrid <- as(density(mypattern,5000,eps=50),'SpatialGridDataFrame')
rastergrid <- raster(spatialgrid)
writeRaster(rastergrid, filename=‘/file.tif’,format=‘GTiff’)
Allerdings, wenn ich das resultierende Raster in QGIS laden Ich habe Probleme aufgrund der Tatsache, dass die Zellenwerte sind geschrieben in wissenschaftlicher Notation, anstatt als einfache Zahlen.
Basierend auf this question, habe ich versucht, format(density(),scientific=FALSE)
aber, dass eine schwere Spitze in CPU und nahm verursachte eine sehr lange Zeit zu laufen, so dass ich schließlich den Prozess getötet.
Ich würde gerne einen Weg finden, um die Dichte() -Funktion zur Ausgabe ganzzahliger Werte zu erhalten. Alternativ gibt es eine Möglichkeit, den Datenrahmen in einen ganzzahligen Datentyp zu konvertieren.
Zwei Möglichkeiten: Ändern Sie die 'scipen' Option z.B. 'Optionen (scipen = 3)' '; Verwenden Sie 'round' anstelle von' format'. Ich weiß nicht, ob sie schneller sein werden, aber es lohnt sich, es zu versuchen. – dash2