Il y a 100 SpatialPointsDataFrames dans mon espace de travail. Je les ai chargés de cette façon:
filenames <- list.files(path="",
pattern="XYhectareTravelTimes_ez+.*shp")
for(i in filenames){
filepath <- file.path("/",i)
assign(i, readShapePoints(filepath))
Ils sont appelés comme ceci:
XYhectareTravelTimes_ez10.*shp
XYhectareTravelTimes_ez11.*shp
XYhectareTravelTimes_ez12.*shp
etc.
Comment puis-je les convertir en rasters en boucle dans l'espace de travail?
Je suis un nouvel utilisateur de R et j'espère trouver de l'aide. Merci beaucoup.
r
rasterization
Trident
la source
la source
Réponses:
Si vos données contiennent des données xyz (où z est la valeur raster) et vos points sont sur une grille régulière (pas besoin d'interpolation).
Si vous avez besoin d'une interpolation, vous pouvez utiliser la bibliothèque akima:
Maintenant, pour faire cela séquentiellement, il vous suffit de l'enrouler en
for
boucle (j'ai essayé de rester aussi proche que possible des informations que vous avez fournies dans votre question):la source
travel@data
(ou d'utiliser@
du tout), car cela dépend des noms internes de aSpatialPointsDataFrame
, qui pourraient changer. Je suggère d'utiliseras.data.frame
, qui ne repose pas sur ces noms internes.En plus de la réponse de @ Etiennebr, j'opterais pour une boucle de style d'application (qui est plus R-ish et utilise moins de code pour la même chose):
la source