The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.
lifecycle::deprecated() function calls that was causing
“could not find function deprecated” errors for users. All function
parameters now properly use lifecycle::deprecated() instead
of deprecated().train_spectra() now correctly populates
RMSEcv and R2cv for rf,
svmLinear, and svmRadial model methods.
Previously these were always NA for non-PLS models.plot_spectra(), aggregate_spectra(),
train_spectra(), and the ikeogu.2017 example
to resolve deprecation warnings.trainControl() configuration in
train_spectra() — changed method from
"repeatedcv" (with no repeats set) to "cv" and
removed a malformed seeds argument that was being silently
ignored. Reproducibility is maintained via the existing
set.seed() call.train_spectra()
is now trained with 500 trees (the randomForest default) instead of
tune.length (≤5). The tuned mtry from training
iterations is now correctly applied to the final model.train_spectra() no longer incorrectly uses the
unique.id column as a predictor. Training data is now
subset to reference and spectral columns only, consistent with iterative
model training.train_spectra() is now fit using the modal best
ncomp from training iterations rather than
tune.length. predict_spectra() now reads
ncomp directly from the model object instead of the stats
file.train_spectra() now correctly subsets
partitioned data using column names rather than pre-computed indices,
preventing an undefined columns selected crash when
cv.scheme is used (the genotype column is removed by
format_cv() before subsetting).train_spectra() now correctly determines the
training data for the final model when cv.scheme is used.
It calls format_cv() one final time to obtain the training
set defined by the chosen scheme: CV0/CV00 train on trial2 + trial3; CV1
trains on t1.b + t2.b; CV2 trains on t1.b + trial2. In all schemes the
test set is t1.a (held-out genotypes from trial1).test_spectra() now correctly forwards
best.model.metric and seed to
train_spectra(). Previously these arguments were accepted
but silently ignored.train_spectra() now calls
set.seed() before createDataPartition(),
ensuring that stratified train/test splits are fully reproducible.
Previously, set.seed() was called after
createDataPartition(), so the partition depended on
whatever the random state happened to be at call time. Note on
reproducibility: users who called test_spectra()
with a non-default seed were previously receiving results
generated with seed = 1 regardless of the value they set.
To reproduce old results, set seed = 1 explicitly. This
will restore previous iterative performance statistics (RMSEp, R2p,
etc.), but the returned $model object will still differ due
to the RF, SVM, and PLS final model fixes also introduced in this
version.ntree and mtry
arguments from predict.randomForest() calls in
train_individual_model() and
predict_spectra(). These arguments are not accepted by
predict.randomForest() and were silently ignored.importance output when running
test_spectra() with multiple pretreatments and an SVM
model. Previously, cbind() on a NULL
importance element produced a garbage 1×1 matrix instead of
NULL.plot_spectra() no longer returns an error when
detect.outliers is set to FALSE and no
alternative title is provided via the alternate.title
parameter (#29).spectacles package (v0.5.5) that was causing data frame
construction errors in model performance calculations.spectacles resolved (#31).
spectacles is now restored on CRAN.waves is fully compatible with the restored
version.train_spectra()
using vectorized indexing and preallocated result structures.train_spectra() for
faster column selection and reduced memory overhead.train_spectra() and test_spectra().return.distances = TRUE, the h.distance column is
now located between metadata and spectra in the returned
data.frame (#28).train_spectra() and
test_spectra() to reduce cyclomatic complexity (#26).
train_spectra() complexity reduced from 32+ to 25test_spectra() complexity reduced to 11handle_deprecations(), validate_inputs(),
partition_data(), train_individual_model(),
calculate_performance(), and
create_cv_control().predict_spectra() no longer returns error when
running example code (#25).cv.scheme is set to “CV2” and “CV0” and there are
no overlapping genotypes between “trial1” and “trial2”,
format_cv() now returns NULL. Previously,
results would be returned even if no overlap was present, resulting in
incorrect CV scheme specification.format_cv() parameter cv.method is now the
boolean parameter stratified.sampling for consistency with
other waves functions.plot_spectra() no longer requires a column named
“unique.id”.save_model() output now works correctly with
predict_spectra().train_spectra() no longer returns an error
when stratified.sampling = F.train_spectra(), stratified random sampling of
training and test sets now allows the user to provide a seed value for
set.seed(). For random (non-stratified) sampling of
training and test sets, seed is set to the current iteration
number.model.method = "svmLinear and
model.method = "svmRadial no longer return an error when
used in train_spectra() or
test_spectra().test_spectra() now returns trained model
correctly when only one pretreatment is specified.plot_spectra() is now
NULL (no title) if detect.outliers is set to
FALSE.$summary.model.performance from test_spectra()
now include underscores rather than periods for easier parsing.vignette("waves")AggregateSpectra ->
aggregate_spectra()DoPreprocessing ->
pretreat_spectra()FilterSpectra -> filter_spectra()FormatCV-> format_cv()PlotSpectra()-> plot_spectra()SaveModel()-> save_model()TestModelPerformance()->
test_spectra()TrainSpectralModel()->
train_spectra()preprocessing is now pretreatment).tune.length must be set to 5 when
model.algorithm == "rf").plot_spectra() including
color and title customization and the option to forgo filtering
(#5).train_spectra() and test_spectra().save_model() now automatically selects the best model
if provided with multiple pretreatments.wavelengths is no longer a required argument for any of
the waves functions.proportion.train. Previously,
this proportion was fixed at 0.7 (#13).aggregate_spectra() now allows for aggregation
by a single grouping column (#14).save.model in the function
save_model() has been renamed to write.model
for clarity.TrainSpectralModel().TrainSpectralModel() or when
preprocessing = TRUE in TestModelPerformance()
(#7).PlotSpectra() now allows for missing data in
non-spectral columns of the input data frame.Initial package release
These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.