Function for replacing outliers for series of observations in the data by NA.
The input can either be a data.frame, specified in dat
, or the output
of the fitSpline
function, specified in fitSpline
. Exactly one
of these should be provided as input for the function.
Arguments
- dat
A
data.frame
.- fitSpline
An object of class
HTPSpline
, the output of thefitSpline
function.- serieOut
A data.frame with at least the column plotId with values corresponding to those in dat/fitSpline.
- reason
A character vector indicating which types of outliers should be replaced by NA.
- traits
The traits that should be replaced by NA. When using the output of
detectSerieOut
as input forserieOut
this defaults to the trait used for when detecting the outliers.
Value
Depending on the input either a data.frame
or an object of
class HTPSpline
for which the outliers specified in serieOut
are replaced by NA.
See also
Other functions for detecting outliers for series of observations:
detectSerieOut()
,
plot.serieOut()
Examples
## Run the function to fit P-splines on a subset of genotypes.
subGenoVator <- c("G160", "G151")
fit.spline <- fitSpline(inDat = spatCorrectedVator,
trait = "EffpsII_corr",
genotypes = subGenoVator,
knots = 50)
## Extract the tables of predicted values and P-spline coefficients.
predDat <- fit.spline$predDat
coefDat <- fit.spline$coefDat
## The coefficients are then used to tag suspect time courses
outVator <- detectSerieOut(corrDat = spatCorrectedVator,
predDat = predDat,
coefDat = coefDat,
trait = "EffpsII_corr",
genotypes = subGenoVator,
thrCor = 0.9,
thrPca = 30,
thrSlope = 0.7)
## Replace the outliers by NA in the corrected data.
spatCorrectedVatorOut <- removeSerieOut(dat = spatCorrectedVator,
serieOut = outVator)
## Only replace the slope outliers by NA in the corrected data.
spatCorrectedVatorOut2 <- removeSerieOut(dat = spatCorrectedVator,
serieOut = outVator,
reason = "slope")
## Replace the outliers by NA in the corrected data.
## Replace both the corrected value and the raw trait value by NA.
spatCorrectedVatorOut3 <-
removeSerieOut(dat = spatCorrectedVator,
serieOut = outVator,
traits = c("EffpsII", "EffpsII_corr"))