stefpeschel/NetCoMi: NetCoMi 1.3.0
Authors/Creators
Description
Major release with new functionalities and a few bug fixes.
New features
SpiecEasiis now available from Bioconductor and NetCoMi depends onSpiecEasi (>= 2.0.0). Users no longer need to installSpiecEasifrom GitHub.In
netConstruct(): NetCoMi's zero replacement methods are now also applied whenmeasure = "spieceasi". Normalization is still ignored by NetCoMi for this measure and should be controlled via SpiecEasi's ownnorm.paramsargument passed throughmeasurePar.In
netConstruct(): The pseudo-count zero replacement method can now be configured viazeroPar. SetzerosOnly = TRUEto replace only zeros, and setrandom = TRUEtogether withzerosOnly = TRUEto replace zeros by random values sampled uniformly between zero and the pseudo count. The formerzeroMethod = "pseudoZO"option is soft-deprecated and maps tozeroMethod = "pseudo", zeroPar = list(zerosOnly = TRUE). The legacy alias now uses the intended zeros-only behavior.In
netConstruct(): New association measure "rhoshrink" available. The method estimates proportionality using shrinkage covariance estimation as proposed by Badri et al. (2020), following code from the accompanying NormCorr manuscript repository.In
netConstruct(): New association measure "corshrink" available, which estimates correlations using the Schäfer-Strimmer shrinkage estimator implemented incorpcor::cor.shrink().In
netAnalyze(): ThenormEigenargument is active again. The defaultnormEigen = TRUEkeeps the current max-normalized eigenvector centrality, whilenormEigen = FALSEreturns eigenvector centralities with Euclidean norm one, corresponding to igraph's formerscale = FALSEbehavior.In
netCompare()anddiffnet(): Permutation p-values can now optionally be refined with thepermApproxpackage by settingrefinePermPvals = TRUE. Additional arguments forpermApprox::perm_approx()can be passed viapermApproxParams. InnetCompare(), this also includes p-values from the adjusted Rand index test.In
diffnet(): New argumentadjustNonzeroOnlycan restrict multiple testing adjustment to taxa pairs with a non-zero sparsified association in at least one of the two networks. A newsummary.diffnet()method summarizes association ranges, edge counts, differential associations, and p-values.In
diffnet(): New method "threshold" available for identifying differential associations by thresholding the absolute differences between association matrices. The threshold can be set via the new argumentdiffThresh.In
plot.diffnet(): Callingplot()for a differential network without differential correlations now returns invisibly with a message instead of throwing an error.In
plot.diffnet(): New argumentsnodeFilterandnodeFilterParallow plotting a named subset of taxa, including when reusing a named layout matrix containing only those taxa.In
plot.diffnet(): Differential association strengths are now rescaled for plotting so weaker non-zero edges respond visibly toedgeWidth.In
plot.diffnet(): New argumentlegendEdgeWidthcontrols the width of edge lines shown in the legend.In
plot.diffnet(): The default edge colors were changed toc("#33A02C", "#2CB7B0", "#56B4E9", "#E69F00", "#D55E00", "#CC79A7", "#B2DF8A", "gray30", "#B0E2FF"). The colors correspond to associations in group 1 and group 2 in the following order:+|+,+|0,+|-,-|+,-|0,-|-,0|+,0|0,0|-. For the discordant method, only sign-changing classes are colored; same-sign classes are shown in neutral gray. The legend is reduced to the subset of cases relevant to the plotted network. To use the previous coloring for Fisher's z-test, permutation tests, or threshold-based differential networks, passedgeCol = c("chartreuse2", "chartreuse4", "cyan", "magenta", "orange", "red", "blue", "black", "purple")toplot(). To use the previous discordant coloring, passedgeCol = c("black", "green", "blue", "orange", "red", "black", "aquamarine", "black", "hotpink").In
plot.diffnet(): Layout matrices with row names are now matched to the plotted taxa by name. This makes it possible to reuse a layout returned byplot.microNetProps()even if the differential network contains only a subset of the nodes.New function
plotGCM()for plotting the Graphlet Correlation Matrix (GCM) heatmaps from objects returned bynetAnalyze(),calcGCM(), andcalcGCD(). ThegcmHeatargument innetAnalyze()is kept for backward compatibility, but new code should callplotGCM()explicitly.In
plotHeat(): The title and legend text sizes can now be adjusted more directly using the newtitleCexandlegendCexarguments.
Further changes
In
createAssoPerm(),netCompare(),diffnet(), and the internal bootstrap tests used for sparsification: Parallel workers now load only the packages required by the selected association/dissimilarity measure and preprocessing settings. Suggested packages are no longer required merely because permutation or bootstrap computations are run in parallel.In
summary.microNetComp(): Very small p-values are now shown in scientific notation instead of being rounded to zero in the printed summary output.In
plotHeat()andprint.GCD(): Very small p-values are now shown in scientific notation when they are printed.In
summary.microNetComp(): Centrality results can now be sorted either by decreasing absolute group difference (sortCentr = "absDiff", default) or by increasing unadjusted p-value (sortCentr = "pvalue").
Bug fixes
- In
summary.microNetComp(): Unadjusted centrality p-values are now always shown when permutation p-values are available. If multiple testing adjustment was applied innetCompare(), adjusted p-values are shown in an additional column instead of replacing the unadjusted p-values.
References
Badri M, Kurtz ZD, Bonneau R, Mueller CL (2020). Shrinkage improves estimation of microbial associations under different normalization methods. NAR Genomics and Bioinformatics, 2(4), lqaa100. doi: 10.1093/nargab/lqaa100.
Files
stefpeschel/NetCoMi-v1.3.0.zip
Files
(22.3 MB)
| Name | Size | Download all |
|---|---|---|
|
md5:67b23708093442ac933bec68404f9be9
|
22.3 MB | Preview Download |
Additional details
Related works
- Is supplement to
- Software: https://github.com/stefpeschel/NetCoMi/tree/v1.3.0 (URL)
Software
- Repository URL
- https://github.com/stefpeschel/NetCoMi