Skip to contents

Most functions require access to a genlight object, dist matrix, data matrix or fixed difference list (fd), and this function checks that a genlight object or one of the above has been passed, whether the genlight object is a SNP dataset or a SilicoDArT object, and reports back if verbosity is >=2.

Usage

utils.check.datatype(
  x,
  accept = c("genlight", "SNP", "SilicoDArT"),
  verbose = NULL
)

Arguments

x

Name of the genlight object, dist matrix, data matrix, glPCA, or fixed difference list (fd) [required].

accept

Vector containing the classes of objects that are to be accepted [default c('genlight','SNP','SilicoDArT'].

verbose

Verbosity: 0, silent or fatal errors; 1, begin and end; 2, progress log; 3, progress and results summary; 5, full report [default NULL, unless specified using gl.set.verbosity].

Value

datatype, 'SNP' for SNP data, 'SilicoDArT' for P/A data, 'dist' for a distance matrix, 'mat' for a data matrix, 'glPCA' for an ordination file, or class(x)[1].

Details

This function checks the class of passed object and sets the datatype to 'SNP', 'SilicoDArT', 'dist', 'mat', or class[1](x) as appropriate.

Note also that this function checks to see if there are individuals or loci scored as all missing (NA) and if so, issues the user with a warning.

Note: One and only one of gl.check, fd.check, dist.check or mat.check can be TRUE.

Author

Custodian: Arthur Georges -- Post to https://groups.google.com/d/forum/dartr

Examples

 # \donttest{
datatype <- utils.check.datatype(testset.gl)
#>   Processing genlight object with SNP data
#> 
datatype <- utils.check.datatype(as.matrix(testset.gl),accept='matrix')
#> Found more than one class "dist" in cache; using the first, from namespace 'spam'
#> Also defined by ‘BiocGenerics’
#>   Processing a data matrix
#> 
fd <- gl.fixed.diff(testset.gl)
#> Starting gl.fixed.diff 
#>   Processing genlight object with SNP data
#>   Comparing populations for absolute fixed differences
#>   Warning: Monomorphic loci retained, used in calculations
#>   Comparing populations pairwise -- this may take time. Please be patient
#> Completed: gl.fixed.diff 
#> 
datatype <- utils.check.datatype(fd,accept='fd')
#>   Processing a fixed difference (fd) object with SNP data
#> 
# }
datatype <- utils.check.datatype(testset.gl)
#>   Processing genlight object with SNP data
#>