In meinem Arbeitsbereich befinden sich 100 SpatialPointsDataFrames. Ich habe sie auf diese Weise geladen:
filenames <- list.files(path="",
pattern="XYhectareTravelTimes_ez+.*shp")
for(i in filenames){
filepath <- file.path("/",i)
assign(i, readShapePoints(filepath))
Sie heißen so:
XYhectareTravelTimes_ez10.*shp
XYhectareTravelTimes_ez11.*shp
XYhectareTravelTimes_ez12.*shp
etc.
Wie kann ich sie in Raster konvertieren, die den Arbeitsbereich durchlaufen?
Ich bin ein sehr neuer R-Benutzer und hoffe, Hilfe zu finden. Danke vielmals.
r
rasterization
Dreizack
quelle
quelle
Antworten:
Wenn Ihre Daten xyz-Daten enthalten (wobei z der Rasterwert ist) und sich Ihre Punkte in einem regulären Raster befinden (keine Interpolation erforderlich).
Wenn Sie eine Interpolation benötigen, können Sie die akima-Bibliothek verwenden:
Um dies nacheinander zu tun, müssen Sie es nur in eine
for
Schleife einwickeln (ich habe versucht, so nah wie möglich an den Informationen zu bleiben, die Sie in Ihrer Frage angegeben haben):quelle
travel@data
(oder@
überhaupt zu verwenden), da dies von den internen Namen von aSpatialPointsDataFrame
abhängt, die sich möglicherweise ändern. Ich schlage vor, zu verwendenas.data.frame
, was nicht auf diesen internen Namen beruht.Zusätzlich zu der Antwort von @ Etiennebr würde ich mich für eine Apply-Style-Schleife entscheiden (die mehr R-ish ist und weniger Code für dieselbe Sache verwendet):
quelle