| subset_handling_functions {segmetric} | R Documentation | 
Subset handling functions
Description
These functions are intended to be used in new metric extensions.
They handle subset_sf data (inherited from sf class) stored in
segmetric objects.
-  
sm_list()lists subsets already computed and stored in asegmetricobject. -  
sm_exists()verifies if asubset_idexists in asegmetricobject. -  
sm_subset()evaluates and stores asubset_sfobject. -  
sm_indirect()finds thesubset_idof a givensubset_sfobject stored in asegmetricobject. -  
sm_segmetric()returns thesegmetricobject that stores a givensubsetobject (either aref_sf, aseg_sf, or asubset_sf). -  
sm_get()retrieves asubset_sfobject stored in asegmetricobject. -  
sm_inset()operator equivalent to inner join but returns only objects froms1, or its corresponding row ins2if parameterreturn_indexisTRUE. -  
sm_group_by(): Apply a function to groups ofsubset_sf. 
Usage
sm_list(m)
sm_exists(m, subset_id)
sm_subset(m, subset_id, expr = NULL)
sm_indirect(s)
sm_segmetric(s)
sm_get(m, subset_id)
sm_ref(m)
sm_seg(m)
sm_inset(s1, s2, return_index = FALSE)
## S3 method for class 'ref_sf'
sm_inset(s1, s2, return_index = FALSE)
## S3 method for class 'seg_sf'
sm_inset(s1, s2, return_index = FALSE)
## S3 method for class 'subset_sf'
sm_inset(s1, s2, return_index = FALSE)
sm_group_by(s, by, fn, ...)
Arguments
m | 
 A   | 
subset_id | 
 A   | 
expr | 
 A valid piece of code in R inside curly braces. This code is evaluated to generate a subset.  | 
s, s1, s2 | 
 Either a   | 
return_index | 
 A   | 
by | 
 A   | 
fn | 
 A   | 
... | 
 For   | 
Value
-  
sm_list(): Return acharactervector with all names of subsets stored in thesegmetricobject. -  
sm_exists(): Return alogicalvalue indicating if a given subset name is stored in thesegmetricobject. -  
sm_subset(): Return asubset_sfobject. -  
sm_indirect(): Return the subset name of a givensubset_sfobject stored in asegmetricobject. -  
sm_segmetric(): Return asegmetricobject that stores a givensubset_sfobject. -  
sm_get(): Return asubset_sfobject stored in asegmetricobject. -  
sm_inset(): Return either asubset_sfobject or anintegervector with the index of corresponding rows ofs2object. -  
sm_group_by(): Return asubset_sfobject. 
Examples
# load sample datasets
data("sample_ref_sf", package = "segmetric")
data("sample_seg_sf", package = "segmetric")
# create segmetric object
m <- sm_read(ref_sf = sample_ref_sf, seg_sf = sample_seg_sf)
# lists only 'ref_sf' and 'seg_sf'
sm_list(m)
# computes 'Y_tilde' subset and stores it as 'test_subset' subset id
# sm_ytilde(m) also stores a subset under 'Y_tilde' id
s <- sm_subset(m, "test_subset", sm_ytilde(m))
# lists 'ref_sf', 'seg_sf', 'test_subset', and 'Y_tilde'
sm_list(m)
# which segmetric object stores `s` subset?
m2 <- sm_segmetric(s)
# m is identical to m2
identical(m, m2)
# which name `s` subset is stored in `m` segmetric object?
sm_indirect(s)
# retrieve 'test_subset' data from `m` object
s2 <- sm_get(m, 'test_subset')
# s is identical to s2
identical(s, s2)