Join GitHub today
GitHub is home to over 20 million developers working together to host and review code, manage projects, and build software together.
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
Already on GitHub? Sign in to your account
resurrect obsolete permatswap & permatfull #159
Comments
|
Nice outline. Note that the I'd add a 6th point to the list: add option for stratified null models in I would also ponder about the kinds of diagnostics one might want to have for mull models. Some kind of distance metric with an option to choose what distance to use (arguments passed to |
|
vegan does not have any proper and efficient way of handling dissimilarities between two data sets: we don't have |
jarioksa commentedMar 30, 2016
permatswapandpermatfullprovided the first quantitative null models in vegan and they were used in simulation inadipartandmultipart. Later, the quantitative null models were transfrerred tomake.commsim&nullmodelandadipart&multipartshifted away frompermatswapandpermatfull. Most of this work (both adding the functions and making them obsolote) was carried out by @psolymos . Currently no vegan function uses these functions, and their output is incompatible withsimulate.nullmodel. However, these functions have some good properties:simulate.nullmodelframework.oecosimuhas a set of similar functions that can be used for the test statistics, but it may be useful to have dissimilarity-based diagnostics for generated matrices.To resurrect
permatswapandpermatfull, we should do the following:permatswap&permatfullshould produce a“simmat”object. That is, a 3-D array with attributes.simulate.nullmodeloutput. For this, we may need to add attribute“orig”to save the original file with the"simmat"array.as.ts,as.mcmc) should probably be documented in a separate manual page (.Rdfile) which also should contain the documentation of similar tools for theoecosimuresults.summary()method for all"simmat"object, also for non-sequential. That could only report the average properties of simulations against the“orig”. Asummary()could also break these properties by row and by column to see how each of these varied separately in simulations.simulate.rda,simulate.cca: we should study how these could be better linked with null model simulations. These functions simulate data under alternative model (= fit + randomized residual) and provide an intriguing alternative to quantitative null models.Points 1 & 2 are the most important. The others are “nice to have or perhaps not” and not so urgent.
An alternative is to remove these functions. However, I have received some reports which indicate that people use these -- and even use them instead of our preferred
nullmodelframework.