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.
This vignette demonstrates the capabilities of the BetaStability
package using the varespec and varechem
datasets from the vegan package.
First, install the package from GitHub:
# Install from GitHub
# install.packages("devtools")
# devtools::install_github("gaoyu19920914/betaStability")
# OR install from BioConductor (in the future when it's available)
# if (!requireNamespace("BiocManager", quietly = TRUE))
# install.packages("BiocManager")
# BiocManager::install("betaStability")Load the BetaStability package and the vegan package for test data:
Load the varespec (community data) and
varechem (environmental metadata) datasets from the vegan
package:
data(varespec)
data(varechem)
# Inspect the data
head(varespec)
#> Callvulg Empenigr Rhodtome Vaccmyrt Vaccviti Pinusylv Descflex Betupube
#> 18 0.55 11.13 0.00 0.00 17.80 0.07 0.00 0
#> 15 0.67 0.17 0.00 0.35 12.13 0.12 0.00 0
#> 24 0.10 1.55 0.00 0.00 13.47 0.25 0.00 0
#> 27 0.00 15.13 2.42 5.92 15.97 0.00 3.70 0
#> 23 0.00 12.68 0.00 0.00 23.73 0.03 0.00 0
#> 19 0.00 8.92 0.00 2.42 10.28 0.12 0.02 0
#> Vacculig Diphcomp Dicrsp Dicrfusc Dicrpoly Hylosple Pleuschr Polypili
#> 18 1.60 2.07 0.00 1.62 0.00 0.0 4.67 0.02
#> 15 0.00 0.00 0.33 10.92 0.02 0.0 37.75 0.02
#> 24 0.00 0.00 23.43 0.00 1.68 0.0 32.92 0.00
#> 27 1.12 0.00 0.00 3.63 0.00 6.7 58.07 0.00
#> 23 0.00 0.00 0.00 3.42 0.02 0.0 19.42 0.02
#> 19 0.00 0.00 0.00 0.32 0.02 0.0 21.03 0.02
#> Polyjuni Polycomm Pohlnuta Ptilcili Barbhatc Cladarbu Cladrang Cladstel
#> 18 0.13 0.00 0.13 0.12 0.00 21.73 21.47 3.50
#> 15 0.23 0.00 0.03 0.02 0.00 12.05 8.13 0.18
#> 24 0.23 0.00 0.32 0.03 0.00 3.58 5.52 0.07
#> 27 0.00 0.13 0.02 0.08 0.08 1.42 7.63 2.55
#> 23 2.12 0.00 0.17 1.80 0.02 9.08 9.22 0.05
#> 19 1.58 0.18 0.07 0.27 0.02 7.23 4.95 22.08
#> Cladunci Cladcocc Cladcorn Cladgrac Cladfimb Cladcris Cladchlo Cladbotr
#> 18 0.30 0.18 0.23 0.25 0.25 0.23 0.00 0.00
#> 15 2.65 0.13 0.18 0.23 0.25 1.23 0.00 0.00
#> 24 8.93 0.00 0.20 0.48 0.00 0.07 0.10 0.02
#> 27 0.15 0.00 0.38 0.12 0.10 0.03 0.00 0.02
#> 23 0.73 0.08 1.42 0.50 0.17 1.78 0.05 0.05
#> 19 0.25 0.10 0.25 0.18 0.10 0.12 0.05 0.02
#> Cladamau Cladsp Cetreric Cetrisla Flavniva Nepharct Stersp Peltapht Icmaeric
#> 18 0.08 0.02 0.02 0.00 0.12 0.02 0.62 0.02 0
#> 15 0.00 0.00 0.15 0.03 0.00 0.00 0.85 0.00 0
#> 24 0.00 0.00 0.78 0.12 0.00 0.00 0.03 0.00 0
#> 27 0.00 0.02 0.00 0.00 0.00 0.00 0.00 0.07 0
#> 23 0.00 0.00 0.00 0.00 0.02 0.00 1.58 0.33 0
#> 19 0.00 0.00 0.00 0.00 0.02 0.00 0.28 0.00 0
#> Cladcerv Claddefo Cladphyl
#> 18 0 0.25 0
#> 15 0 1.00 0
#> 24 0 0.33 0
#> 27 0 0.15 0
#> 23 0 1.97 0
#> 19 0 0.37 0
head(varechem)
#> N P K Ca Mg S Al Fe Mn Zn Mo Baresoil Humdepth
#> 18 19.8 42.1 139.9 519.4 90.0 32.3 39.0 40.9 58.1 4.5 0.3 43.9 2.2
#> 15 13.4 39.1 167.3 356.7 70.7 35.2 88.1 39.0 52.4 5.4 0.3 23.6 2.2
#> 24 20.2 67.7 207.1 973.3 209.1 58.1 138.0 35.4 32.1 16.8 0.8 21.2 2.0
#> 27 20.6 60.8 233.7 834.0 127.2 40.7 15.4 4.4 132.0 10.7 0.2 18.7 2.9
#> 23 23.8 54.5 180.6 777.0 125.8 39.5 24.2 3.0 50.1 6.6 0.3 46.0 3.0
#> 19 22.8 40.9 171.4 691.8 151.4 40.8 104.8 17.6 43.6 9.1 0.4 40.5 3.8
#> pH
#> 18 2.7
#> 15 2.8
#> 24 3.0
#> 27 2.8
#> 23 2.7
#> 19 2.7
# Dimensions of the datasets
cat("Dimensions of varespec:", dim(varespec), "\n")
#> Dimensions of varespec: 24 44
cat("Dimensions of varechem:", dim(varechem), "\n")
#> Dimensions of varechem: 24 14Calculate stability using a single prediction method
(linearPred):
# Calculate stability with linearPred
result_linear <- betaStability(
comtable = varespec,
envmeta = varechem,
method = "linearPred"
)
# Inspect the result
head(result_linear)
#> stability_Linear
#> 18 0.10957916
#> 15 0.04122119
#> 24 0.03322119
#> 27 0.01357100
#> 23 0.10483057
#> 19 0.15983875
length(result_linear)
#> [1] 1Calculate stability using multiple prediction methods:
# Calculate stability with multiple methods
results_multi <- betaStability(
comtable = varespec,
envmeta = varechem,
method = c("linearPred", "mlPred", "glmPred")
)
# Inspect the result
head(results_multi)
#> linearPred mlPred glmPred
#> 18 0.10957916 0.10697541 0.09500812
#> 15 0.04122119 0.04948000 0.01748590
#> 24 0.03322119 -0.48026478 -0.21070746
#> 27 0.01357100 0.03842571 0.02109734
#> 23 0.10483057 0.12130661 0.09886321
#> 19 0.15983875 0.26114780 0.20125290
dim(results_multi)
#> [1] 24 3Calculate stability using all available prediction methods:
# Calculate stability with all methods
results_all <- betaStability(
comtable = varespec,
envmeta = varechem,
method = "all"
)
# Inspect the result
head(results_all)
#> linearPred mlPred glmPred gamPred gdmPred rfPred
#> 18 0.10957916 0.10697541 0.09937490 0.01719127 0.12600785 0.10018222
#> 15 0.04122119 0.04948000 0.01617294 -0.02551985 0.05920659 0.01628172
#> 24 0.03322119 -0.48026478 -0.21337998 -0.13782392 -0.13878658 -0.21489886
#> 27 0.01357100 0.03842571 0.02109734 -0.03525648 0.07550562 0.01931343
#> 23 0.10483057 0.12130661 0.09862410 0.03382381 0.08270438 0.09435799
#> 19 0.15983875 0.26114780 0.20126436 0.09397862 0.16207300 0.18880189
#> xgboostPred
#> 18 0.09206358
#> 15 0.02510648
#> 24 -0.25652045
#> 27 0.02518945
#> 23 0.06493194
#> 19 0.20346170
dim(results_all)
#> [1] 24 7
colnames(results_all)
#> [1] "linearPred" "mlPred" "glmPred" "gamPred" "gdmPred"
#> [6] "rfPred" "xgboostPred"Visualize the stability results using the plotStability
function:
You can also customize the site names in the plot:
# Create custom site names
custom_sitenames <- paste("Site", seq_len(nrow(varespec)))
# Plot with custom site names
p4 <- plotStability(results_multi, sitenames = custom_sitenames)
p4The BetaStability package provides a comprehensive framework for calculating and visualizing site stability using various prediction methods. Key features include:
plotStability
function creates informative plots of stability results.This package is designed to help researchers and ecologists assess site stability based on the beta stability of communities, providing valuable insights for ecosystem management.
print(sessionInfo())
#> R version 4.5.3 (2026-03-11 ucrt)
#> Platform: x86_64-w64-mingw32/x64
#> Running under: Windows 11 x64 (build 26200)
#>
#> Matrix products: default
#> LAPACK version 3.12.1
#>
#> locale:
#> [1] LC_COLLATE=C
#> [2] LC_CTYPE=English_United States.utf8
#> [3] LC_MONETARY=English_United States.utf8
#> [4] LC_NUMERIC=C
#> [5] LC_TIME=English_United States.utf8
#>
#> time zone: Asia/Shanghai
#> tzcode source: internal
#>
#> attached base packages:
#> [1] stats graphics grDevices utils datasets methods base
#>
#> other attached packages:
#> [1] ggplot2_4.0.2 vegan_2.7-3 permute_0.9-10
#> [4] betaStability_0.0.4
#>
#> loaded via a namespace (and not attached):
#> [1] sass_0.4.10 generics_0.1.4 shape_1.4.6.1
#> [4] stringi_1.8.7 lattice_0.22-9 usedist_0.4.0
#> [7] digest_0.6.39 magrittr_2.0.4 evaluate_1.0.5
#> [10] grid_4.5.3 RColorBrewer_1.1-3 BBmisc_1.13.1
#> [13] iterators_1.0.14 fastmap_1.2.0 xgboost_3.2.1.1
#> [16] glmnet_4.1-10 Matrix_1.7-5 foreach_1.5.2
#> [19] doParallel_1.0.17 plyr_1.8.9 jsonlite_2.0.0
#> [22] backports_1.5.0 survival_3.8-6 mgcv_1.9-4
#> [25] scales_1.4.0 pbapply_1.7-4 codetools_0.2-20
#> [28] jquerylib_0.1.4 cli_3.6.5 rlang_1.1.7
#> [31] splines_4.5.3 withr_3.0.2 cachem_1.1.0
#> [34] yaml_2.3.12 otel_0.2.0 tools_4.5.3
#> [37] parallel_4.5.3 reshape2_1.4.5 checkmate_2.3.4
#> [40] dplyr_1.2.0 gdm_1.6.0-7 vctrs_0.7.2
#> [43] R6_2.6.1 lifecycle_1.0.5 randomForest_4.7-1.2
#> [46] stringr_1.6.0 MASS_7.3-65 cluster_2.1.8.2
#> [49] pkgconfig_2.0.3 pillar_1.11.1 bslib_0.10.0
#> [52] gtable_0.3.6 data.table_1.18.2.1 glue_1.8.0
#> [55] Rcpp_1.1.1 xfun_0.57 tibble_3.3.1
#> [58] tidyselect_1.2.1 rstudioapi_0.18.0 knitr_1.51
#> [61] farver_2.1.2 nlme_3.1-169 htmltools_0.5.9
#> [64] labeling_0.4.3 rmarkdown_2.31 compiler_4.5.3
#> [67] S7_0.2.1These 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.