-
BUG FIX
project_to_curve()
: Return error message whenx
ors
contain insufficient rows. -
BUG FIX unit tests: Switch from
svg()
topdf()
as support forsvg()
might be optional.
- BUG FIX
project_to_curve()
: Fix pass-by-reference bug, issue #33. Thanks to @szcf-weiya for detecting and fixing this bug!
-
BUG FIX: Fix warning in
stats::approx()
due to changes made in R 3.6. -
DEFUNCT
principal.curve()
andget.lam()
.
-
BUG FIX: Removed extra dependencies in princurve by removing vignettes; fixes #28.
-
DEPRECATION
principal.curve()
andget.lam()
.
-
DOCUMENTATION: Use the
magick
package to generate animated GIFs in the vignette, instead of theanimation
package, becauseanimation
usesffmpeg
which is not installed on all CRAN systems. -
DEPRECATION: Added deprecation which will be triggered starting from 2018-08-01 upon calling
principal.curve()
orget.lam()
.
-
DOCUMENTATION: Added vignettes on the algorithm behind princurve and on benchmarking results between princurve 1.1 and 2.1.
-
BUG FIX
principal_curve()
: Don't apply rownames to curve as approx_points could be set to a different value other thannrow(x)
. -
TESTING: Skip comparison unit test between princurve 1.1 and 2.1 on CRAN.
-
MINOR CHANGE
project_to_curve()
: Attempt to fix rchk warnings by not usingx(i, j) = v
notation but insteadx[j * x.nrow() + i] = v
. -
DOCUMENTATION: Fix in README documentation.
-
BUG FIX
principal_curve()
: avoid division by zero when the initial principal curve has already converged. -
BUG FIX
project_to_curve()
: set dimension names of outputteds
correctly. -
DOCUMENTATION: Added
cran-comments.md
andrevdep
to repository. -
MINOR CHANGE: Removed
adjust_range()
; usegrDevices::extendrange()
instead. -
TESTING
start_circle()
: Added unit tests. -
BUG FIX
start_circle()
: Make sure circle is centered and scaled correctly. -
MINOR CHANGE: Move smoother functions from inside
principal_curve()
to a listsmoother_functions
. -
TESTING
smoother_functions
: Added tests to ensure each of the smoother functions work correctly. -
SPEED UP
project_to_curve()
: Significantly speed up this function by not allocation objects that don't need allocation, and pre-allocating objects that do. -
SPEED UP
principal_curve()
: Addedapprox_points
parameter. This allows approximation of the curve between smoothing and projection, to ensureprincipal_curve()
scales well to higher numbers of samples.
-
BUG FIX: Fixed issues with legacy
principal.curve()
andget.lam()
(#8). -
TESTING: Perform direct comparison between the current princurve and princurve 1.1-12 to check whether
principal.curve()
andget.lam()
produce output with exactly the same format and almost exactly the same values. -
SIGNIFICANT CHANGE: Remove the
ord
parameter fromproject_to_curve()
, in order to reduce the amount of Rcpp code a little bit. -
DOCUMENTATION: Improved citations (#10).
-
DOCUMENTATION: Improved news (#11).
-
SPEED UP
project_to_curve()
: Do not computelambda
accurately as it is only used to order the points inx
. -
MINOR CHANGE: Added
...
argument towhiskers()
. -
DOCUMENTATION: Minor fix in output documentation of
principal_curve()
. -
DOCUMENTATION: Added more information to the README.
-
MINOR CHANGE: Support both
news()
and markdown news on GitHub.
-
SIGNIFICANT CHANGES: Reimplemented
project_to_curve()
completely in Rcpp, thereby completely removing all Fortran code from princurve. -
TESTING: test both on linux and osx.
-
TESTING: Added tests to ensure
project_to_curve()
works similar to legacyget.lam()
.
-
MAINTAINER: Changed the maintainer from Andreas Weingessel to Robrecht Cannoodt.
-
SIGNIFICANT CHANGES: Added functions
principal_curve()
andproject_to_curve()
with a slightly different interface thanprincipal.curve()
andget.lam()
. -
DEPRECATION: Prepare
get.lam()
andprincipal.curve()
for deprecation planned on 2018-07-01. Will contact maintainers of reverse depending packages. -
BUG FIX: Allow
start_circle()
to work when the number of dimensions is larger than 2. -
DOCUMENTATION: Rewrite the README in markdown.
-
DOCUMENTATION: Use roxygen2 for the documentation.
-
MINOR CHANGES: Clean up code to ensure consistent code formatting.
-
TESTING: Added tests for
principal_curve()
andproject_to_curve()
. -
TESTING: Enabled continuous integration using travis-ci.org and ci.appveyor.com.
- BUG FIX: src/sortdi.f (sortdi): Fix Fortran array bounds problem.
-
MINOR CHANGES: Update for R 2.0.
-
DEPRECATION: Removed
whiskers()
-
BENCHMARKING: For larger data sets, most of the time is spent in
get.lam()
. -
BUG FIX:
smooth.spline(x,y)
will only use and return values for "unique" {x}:s. This means that the fitted {y}:s maybe be fewer than the input vector. In order to control for this, we usepredict()
. -
NEW FEATURE: Now
smoother
can also be a function taking argumentslambda
,xj
and...
and returny
of the same length aslambda
andxj
. -
NEW FEATURE
principal.curve()
: Argumentsstart
andstretch
can be NULL, which behaves the same as if they are "missing" [which is hard to emulate with for instancedo.call()
]. -
NEW FEATURE: Added
converged
andnbrOfIterations
to return structure. -
SPEED UP/MEMORY OPTIMIZATION: Now the nxp matrix 's' is allocated only once. Before it was built up using cbind() once per iteration.
-
SPEED UP: Now the smoother function is identified/created before starting the algorithm, and not once per dimension and iteration.
-
MEMORY OPTIMISATION
principal.curve()
: Now the result matrix allocated as doubles, not logicals (as NA is), in order to prevent a coersion. -
BUG FIX: An error was thrown if
smoother
was a function. -
MINOR CHANGES: Cleaned up source code (removed comments).
- MINOR CHANGE: Clarify license.
- MINOR CHANGE: Update license and add depending packages.
-
MINOR CHANGE: Depend on R >= 1.9.0
-
MINOR CHANGE: Changed license to GPL version 2 or newer, as granted by Trevor Hastie.
-
MINOR CHANGE: Don't require defunct
modreg
.
- MINOR CHANGE: Removed INDEX.
- MINOR CHANGE: Added
PACKAGE
to Fortran calls.
- MINOR CHANGES: Change all
T
toTRUE
.
-
MINOR CHANGE
plot.principal.curve()
: Rename argumentobject
tox
. -
MINOR CHANGE
lines.principal.curve()
: Rename argumentobject
tox
. -
MINOR CHANGE
points.principal.curve()
: Rename argumentobject
tox
. -
MINOR CHANGE: Rename internal function
start.circle()
tostartCircle()
.
-
DESCRIPTION: Added Title and Maintainer field.
-
MINOR CHANGES: Changed
F
toFALSE
. -
DOCUMENTATION: Added keywords to
get.lam()
. -
DOCUMENTATION: Expanded documentation of
principal.curve()
: added default values to usage, description, keywords and aliases. -
MINOR CHANGES: Changed precision in
getlam.f
fromv(2,10)
tov(2,p)
.