Version 2.2.5
Documentation:
- Improved documentation and added new pkgdown documentation website.
- NEWS file moved to markdown format instead of .Rd and available on the website
Version 2.2.4
Adjustments:
- Documentation roxygenized.
- More selective importing and exporting.
- S3 implementation of
ridgeP
output.
Version 2.2.3
Documentation:
- Updated
CITATION
file
- Updated
README
file
Bug fixes:
- Fixed bug in
GGMpathStats
: Incorrectly stated before that all igraph layouts were supported. Now they indeed are supported.
Adjustments:
- Bioconductor dependencies are now automatically installed upon first installation of rags2ridges.
GGMpathStats
now has additional visualization options: It can handle all layout functions supported by igraph. Moreover, it is now possible to specify custom coordinates for node-placement.
Version 2.2.2
Notifications:
- Hot fix due to class changes in “matrix”. No major visible user changes.
CNplot
function again updated: higher max. iterations for Lanczos method
Version 2.2.1
Notifications:
- Hot fix due to new RNG. No visible user changes.
Version 2.2
Notifications:
optPenalty.LOOCV
is deprecated. Please use optPenalty.kCV
instead
optPenalty.LOOCVauto
is deprecated. Please use optPenalty.kCVauto
instead
Version 2.1.1
Documentation:
- Updated
CITATION
file
- Updated
README
file
Adjustments:
sparsify
now has an additional thresholding option: ‘connected’
Version 2.1
Documentation:
- Updated
CITATION
file
- Updated
README
file
Bug fixes:
- Fixed bug in
Ugraph
:
- Incorrectly stated before that all igraph layouts were supported.
- Now they indeed are supported.
Notifications:
conditionNumberPlot
is deprecated. Please use CNplot
instead
- Features of the
CNplot
function (above and beyond conditionNumberPlot
):
- The
digitLoss
and rlDist
arguments have been removed
- These arguments have been replaced with the logical argument
Iaids
Iaids = TRUE
amends the basic condition number plot with interpretational aids
- These aids are the approximate loss in digits of accuracy and and approximation of the acceleration along the regularization path of the condition number
- Argument
main
is now a character argument
- Argument
value
now by default takes the value 1e-100 (convenient)
- Now uses C++ functionalty for additional speed
Adjustments:
edgeHeat
now has aligned x-axis labels
- The visualizations of the
optPenalty.LOOCV
and optPenalty.aLOOCV
functions now will no longer produce horizontal and/or vertical lines that fall outside the boundaries of the figure
optPenalty.LOOCV
now uses log-equidistant penalty grid for optimal penalty parameter determination (this also enhances the visualization)
- New features updated
optPenalty.aLOOCV
function:
- Function has been sped up by killing redundant inversion
- now uses log-equidistant penalty grid for optimal penalty parameter determination (this also enhances the visualization)
- New features updated
Ugraph
function:
- One can now also specify vertex placement by coordinate specification
- Now outputs, for convenience, the vertex coordinates of the plotted graph
ridgePathS
has been sped up by killing redundant inversion
- The
covML
function has been amended with an argument that indicates if a correlation matrix (instead of an ML estimate of a covariance matrix) is desired. This offers more flexibility. One can now get the ML estimate of the covariance matrix, the ML estimate of the covariance matrix on standardized data, as well as the correlation matrix
- The
optPenalty.LOOCVauto
function has been amended with an argument that indicates if the evaluation of the LOOCV score should be performed on the correlation scale
- The
optPenalty.LOOCV
function has been amended with an argument that indicates if the evaluation of the LOOCV score should be performed on the correlation scale
- The
optPenalty.aLOOCV
function has been amended with an argument that indicates if the evaluation of the approximate LOOCV score should be performed on the correlation scale
Version 2.0
Documentation:
- Added this
NEWS
file!
- Updated (and corrected)
CITATION
file
- Added
README
file
- Added (selective) import statements for default packages as required for R-devel
Additions:
- rags2ridges now uses Rcpp and RcppArmadillo with core functions written in
C++
. The package should now be at least two orders of magnitude faster in most cases.
- Added, next to the core module, the fused ridge module. The fused module provides functionality for the estimation and graphical modeling of multiple precision matrices from multiple high-dimensional data classes. Functions from this module are generally suffixed with
.fused
. Functions tied to (or added with) this module are:
isSymmetricPD
isSymmetricPSD
is.Xlist
default.target.fused
createS
getKEGGPathway
kegg.target
pooledS
pooledP
KLdiv.fused
ridgeP.fused
optPenalty.fused.grid
print.optPenaltyFusedGrid
plot.optPenaltyFusedGrid
optPenalty.fused.auto
optPenalty.fused
default.penalty
fused.test
print.ptest
summary.ptest
hist.ptest
plot.ptest
sparsify.fused
GGMnetworkStats.fused
GGMpathStats.fused
- The following functions were added to the core module:
- Added miscellaneous (hidden) functions.
Bug fixes:
- Fixed bugs in
GGMpathstats
:
- Code no longer breaks down if variable names are absent.
- Now properly handles singleton pathsets.
- Fixed bug in
sparsify
: Now always returns symmetric objects
Adjustments:
- Argument
verticle
as used in various functions has been renamed to vertical
. Sorry for any inconvenience.
- Internal usage of
ridgeS
replaced by the faster C++-dependent counterpart ridgeP
- New features updated
conditionNumberPlot
function:
- Function has been sped up
- Now uses log-equidistant grid for visualization
- Now includes option to additionally plot the approximate loss in digits of accuracy
Notifications:
ridgeS
is deprecated. Please use ridgeP
instead
- Future versions of rags2ridges will be subject to changes in naming conventions
Version 1.4
Additions:
- Inclusion hidden function
.pathContribution
for usage in GGMpathStats
function
- Inclusion hidden function
.path2string
for usage in GGMpathStats
function
- Inclusion hidden function
.pathAndStats
for usage in GGMpathStats
function
- Inclusion hidden function
.cvl
for usage in optPenalty.LOOCVauto
function
- Inclusion hidden function
.lambdaNullDist
for usage in GGMblockNullPenalty
function
- Inclusion hidden function
.blockTestStat
for usage in GGMblockTest
function
- Inclusion function that expresses the covariance between a pair of variables as a sum of path weights:
GGMpathStats
- Inclusion function that determines the optimal penalty parameter value by application of the Brent algorithm to the LOOCV log-likelihood:
optPenalty.LOOCVauto
- Inclusion function that generates the distribution of the penalty parameter under the null hypothesis of block independence:
GGMblockNullPenalty
- Inclusion function that performs a permutation test for block structure in the precision matrix:
GGMblockTest
- Inclusion wrapper function:
fullMontyS
Bug fixes:
- Corrected small error in
evaluateSfit
function. The dir
argument was not properly used previously.
Adjustments:
- New features updated
optPenalty.aLOOCV
function:
- For scalar matrix targets the complete solution path depends on only 1 eigendecomposition and 1 matrix inversion. Meaning: the function is sped up somewhat by lifting redundant inversions out of
for
loops.
- Optional graph now plots the approximated LOOCV negative log-likelihood instead of ln(approximated LOOCV negative log-likelihood).
- Legend in optional graph has been adapated accordingly.
- New features updated
optPenalty.LOOCV
function:
- Optional graph now plots the LOOCV negative log-likelihood instead of ln(LOOCV negative log-likelihood).
- Legend in optional graph has been adapated accordingly.
- New features updated
default.target
function:
- Inclusion new default target option:
type = DIAES
. Gives diagonal matrix with inverse of average of eigenvalues of S as entries.
- New features updated
GGMnetworkStats
function:
- Now also assesses (and returns a logical) if graph/network is chordal.
- Now also includes assesment of the eigenvalue centrality.
- Now includes option to have list or table output.
- New features updated
ridgePathS
function:
- Sped up considerably for rotation equivariant alternative estimator. By avoidance of redundant eigendecompositions and inversions.
- Now catches breakdown due to rounding preculiarities when
plotType = "pcor"
.
- New features updated
sparsify
function:
- Inclusion new thresholding function
top
: retainment of top elements based on absolute partial correlation.
- Inclusion output option: When
output = "light"
, only the (matrix) positions of the zero and non-zero elements are returned.
- Function no longer dependent on GeneNet; now makes direct use of fdrtool.
- Function now also prints some general information on the number of edges retained.
Version 1.3
Additions:
- Inclusion hidden function
.ridgeSi
for usage in conditionNumberPlot
function.
- Inclusion hidden function
.eigShrink
for usage in (a.o.) ridgeS
function.
- Inclusion function calculating various network statistics from a sparse matrix:
GGMnetworkStats
- Inclusion function for visual inspection fit of regularized precision matrix to sample covariance matrix:
evaluateSfit
- Inclusion function for visualization of regularization paths:
ridgePathS
- Inclusion function for default target matrix generation:
default.target
Adjustments and name changes:
- New features updated
evaluateS
function:
- The printed output of the
evaluateS
function is now aligned
- Calculation spectral condition number has been improved
conditionNumber
function now called conditionNumberPlot
. The updated function has new features:
- Main plot can now be obtained with either the spectral (l2) or the (approximation to) l1 condition number
- Main plot can now be amended with plot of the relative distance to the set of singular matrices
- The title of the main plot can now be suppressed
- One can now obtain numeric output from the function: lambdas and condition numbers
- New features updated
sparsify
function:
- Changed
type = c("threshold", "localFDR")
to threshold = c("absValue", "localFDR")
(clarifying nomenclature)
- Changed
threshold
to absValueCut
(clarifying nomenclature)
- Will now output both sparsified partial correlation/standardized precision matrix and the sparsified precison matrix, when input consists of the unstandardized precision matrix
- New features updated
ridgeS
function:
- Contains an improved evaluation of the target matrix possibly being a null matrix
- Now evaluates if a rotation equivariant alternative estimator ensues for a given target matrix
- When rotation equivariant alternative estimator ensues, computation is sped up considerably by circumventing the matrix square root
optPenaltyCV
function now called optPenalty.LOOCV
, for sake of (naming) consistency. The updated function has new features:
targetScale
option has been removed
- Replaced
log
in optional graph by ln
- Visual layout of optional graph now more in line with recommendations by Tufte (regarding data-ink ratio)
- New features updated
optPenalty.aLOOCV
function:
- Replaced
log
in optional graph by ln
- Visual layout of optional graph now more in line with recommendations by Tufte (regarding data-ink ratio)
- Computation optimal penalty in
conditionNumberPlot
, optPenalty.aLOOCV
and optPenalty.LOOCV
functions sped up considerably for rotation equivariant alternative estimator. By usage new ridgeS and avoidance of redundant eigendecompositions
- Default target in
ridgeS
, conditionNumberPlot
, optPenalty.aLOOCV
and optPenalty.LOOCV
now \code{“DAIE” option from default.target
Version 1.2
Additions:
- Inclusion function for ML estimation of the sample covariance matrix:
covML
- Inclusion function for approximate leave-one-out cross-validation:
optPenalty.aLOOCV
- Inclusion function
conditionNumber
to visualize the spectral condition number over the regularization path
- Inclusion function
evaluateS
to evaluate basic properties of a covariance matrix
- Inclusion function
KLdiv
that calculates the Kullback-Leibler divergence between two normal distributions
- Inclusion option to suppress on-screen output in
sparsify
function
Bug fixes:
- Corrected small error in
optPenaltyCV
function
Adjustments:
- Both
optPenaltyCV
and optPenalty.aLOOCV
now utilize covML
instead of cov
- Default output option in
optPenaltyCV
(as in optPenalty.aLOOCV
) is now light