Become an expert in R — Interactive courses, Cheat Sheets, certificates and more!
Get Started for Free

split

Split a Spectra* object using factors


Description

Splits a Spectra* object into groups using a factor, either a provided as a vector or as an attribute in the features of the object.

Usage

## S4 method for signature 'Spectra'
split(x, f, drop = FALSE, ...)

Arguments

x

Spectra object

f

either a vector of factors (for objects inheriting from Spectra), or the name or indice of an attribute in the data slot of an object inheriting from SpectraDataFrame

drop

ignored

...

further potential arguments passed to methods.

Details

This is an adaptation of the split function in the base package.

Value

A list of objects of same class as x.

Author(s)

Pierre Roudier pierre.roudier@gmail.com

Examples

# Loading example data
data(australia)
spectra(australia) <- sr_no ~ ... ~ 350:2500

# On a Spectra object, we need to provide a vector of factors
# to split the object
s <- as(australia, 'Spectra')
# We make up some kind of factor to split the data. 
idx <- sample(letters[1:5], replace = TRUE, size = nrow(s)) # This is a vector
r <- split(s, idx)
str(r)

# On a SpectradataFrame object, we can also provide the name or index 
# of an attribute

# Generate some kind of factor
australia$fact <- sample(LETTERS[1:3], size = nrow(australia), replace = TRUE) 
r <- split(australia, 'fact')
str(r)

# A list is returned, and is thus ready for use with lapply, or any
# of the l*ply functions from the plyr package
lapply(r, nrow)

spectacles

Storing, Manipulating and Analysis Spectroscopy and Associated Data

v0.5-3
GPL-3
Authors
Pierre Roudier [aut, cre], Max Kuhn [ctb], Kristian Hovde Liland [ctb], Bjorn-Helge Mevik [ctb], Hadley Wickham [ctb], Raphael Viscarra Rossel [dtc]
Initial release
2021-01-11

We don't support your browser anymore

Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.