mvl_index_lapply {RMVL} | R Documentation |
This function is passed the index computed by mvl_write_spatial_index1
or mvl_write_extent_index
and a list of vectors, which are interpreted in a data frame fashion, or an R data.frame.
For each row we retrieve that set of indices that matches it and call function fn(i, idx) with index i of row being processed and vector idx listing matched indices.
mvl_index_lapply(index, data_list, fn)
index |
MVL_OBJECT computed by |
data_list |
a list of vectors of equal length. They can be MVL_OBJECTs or R vectors, or a data.fame. |
fn |
a function of one argument - list of indices |
The notion of "matched index" is specific to type of index being used:
* for an index created with mvl_write_spatial_index1
we return the indices of nearby rows. The user should apply an additional cut to narrow down to actual indices needed.
* for an index created with mvl_write_extent_index
we return the indices of rows with identical hashes. Even though 64-bit hashes produce very few collisions, it is recommended to apply additional cut to ensure that only the exactly matching rows are returned.
a list of results of function fn
## Not run: Mtmp<-mvl_open("tmp_a.mvl", append=TRUE, create=TRUE) mvl_write_object(Mtmp, data.frame(x=runif(100), y=1:100), "df1") Mtmp<-mvl_remap(Mtmp) mvl_write_spatial_index1(Mtmp, list(Mtmp$df1[,"x",ref=TRUE], Mtmp$df1[,"y", ref=TRUE]), c(2, 3), "df1_sp_groups") Mtmp<-mvl_remap(Mtmp) mvl_neighbors_lapply(Mtmp["df1_sp_groups", ref=TRUE], list(c(0.5, 0.6), c(2, 3)), function(i, idx) { return(list(i, idx))}) ## End(Not run)