Ich habe eine Funktion erstellt, die ein Raster und eine Matrix erfordert.Jeder Reihe der Matrix enthält die Koordinaten einer Zelle im Raster. Nach meiner Funktion Finishing gibt einen Vektor, der die Anzahl von jeder Zelle enthält, die in meiner Matrix über seinen Koordinaten gespeichert:ersetzen für Schleife mit in R innerhalb einer Funktion anwenden
library(raster)
library(gdistance)
r <- raster(nrow=100,ncol=15)
r[] <- 1:ncell(r)
plot(r)
pts <- matrix(c(-144,72.9,-168,45.9,-144,13.5),ncol=2,nrow=3,byrow=TRUE)
get_cells <- function(raster,points_matrix) {
Cells <- c()
for (i in 1:nrow(points_matrix))
{
Cells[i] <- cellFromXY(raster,c(points_matrix[i,]))
}
return(Cells)
}
Nun möchte Ich mag an meiner Funktion neu strukturieren, so dass ich es mit apply()
verwenden können. Also am Ende mag ich in der Lage sein, so etwas wie zu geben:
apply(pts,1,get_cells)
und das gleiche Ergebnis, aber ich kann nicht herausfinden, wie es zu tun. Jede Art von Hilfe wird sehr geschätzt.
wo hast du 'points_matrix' definiert? – Koundy
habe ich nicht, es ist ein Parameter der Funktion, die ich erstelle und man muss die 'pts'-Matrix beim Aufruf der Funktion zuweisen. Um die Funktion auszuführen, müssen Sie Folgendes eingeben: 'get_cells (r, pts)' – snoops