Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Add copy buttons to all
 blocks
(function() {
function addCopyButtons() {
document.querySelectorAll('pre code').forEach(function(codeBlock) {
if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;
codeBlock.parentElement.setAttribute('data-copy-added', 'true');
var btn = document.createElement('button');
btn.textContent = 'Copy';
btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';
btn.onmouseover = function() { this.style.opacity = '1'; };
btn.onmouseout = function() { this.style.opacity = '0.7'; };
btn.onclick = function() {
navigator.clipboard.writeText(codeBlock.textContent).then(function() {
btn.textContent = 'Copied!';
setTimeout(function() { btn.textContent = 'Copy'; }, 1500);
});
};
codeBlock.parentElement.style.position = 'relative';
codeBlock.parentElement.appendChild(btn);
});
}
addCopyButtons();
// Re-run on dynamic content
var observer = new MutationObserver(addCopyButtons);
observer.observe(document.body, { childList: true, subtree: true });
})();
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Force GitHub README to respect dark mode (function() { var style = document.createElement('style'); style.textContent = ' .markdown-body { color-scheme: dark light; } .markdown-body pre { background: #161b22 !important; } .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; } .markdown-body table th, .markdown-body table td { border-color: #30363d !important; } .markdown-body img { background: #0d1117; } .markdown-body blockquote { border-left-color: #8b949e; } .markdown-body hr { border-color: #30363d; } '; document.head.appendChild(style); })(); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Highlight search terms from Google/DuckDuckGo/Bing referrer (function() { var ref = document.referrer; var terms = []; if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) { var url = new URL(ref); var q = url.searchParams.get('q') || url.searchParams.get('p'); if (q) { terms = q.split(/\s+/).filter(function(t) { return t.length > 2; }); } } if (terms.length === 0) return; var style = document.createElement('style'); style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }'; document.head.appendChild(style); function highlight(node) { if (node.nodeType === 3) { // text node var text = node.textContent; var found = false; terms.forEach(function(term) { var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\]\\]/g, '\\') + ')', 'gi'); if (regex.test(text)) { found = true; var frag = document.createDocumentFragment(); var parts = text.split(regex); parts.forEach(function(part, i) { if (i % 2 === 0) { frag.appendChild(document.createTextNode(part)); } else { var span = document.createElement('span'); span.className = 'userscript-highlight'; span.textContent = part; frag.appendChild(span); } }); node.parentNode.replaceChild(frag, node); } }); } else if (node.nodeType === 1 && node.childNodes) { // element var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT']; if (!skipTags.includes(node.tagName)) { Array.from(node.childNodes).forEach(highlight); } } } highlight(document.body); // Re-highlight on dynamic content var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1 || node.nodeType === 3) highlight(node); }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Strip utm_, fbclid, gclid, etc. from all links on page (function() { var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content', 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid', 'ref', 'ref_src', 'source', 'medium', 'campaign']; function cleanUrl(url) { try { var u = new URL(url, window.location.origin); var changed = false; trackingParams.forEach(function(p) { if (u.searchParams.has(p)) { u.searchParams.delete(p); changed = true; } }); return changed ? u.toString() : url; } catch (e) { return url; } } function cleanLinks() { document.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } cleanLinks(); var observer = new MutationObserver(function(mutations) { mutations.forEach(function(m) { m.addedNodes.forEach(function(node) { if (node.nodeType === 1) { if (node.tagName === 'A') cleanLinks(); node.querySelectorAll('a[href]').forEach(function(a) { var clean = cleanUrl(a.href); if (clean !== a.href) a.href = clean; }); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + ' GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Auto-enable theater mode on YouTube (function() { function tryTheater() { var btn = document.querySelector('button[aria-label="Theater mode"], ytd-player #player button[title="Theater mode"]'); if (btn && !btn.classList.contains('activated')) { btn.click(); } } // Try immediately tryTheater(); // Try after navigation (SPA) var lastUrl = location.href; setInterval(function() { if (location.href !== lastUrl) { lastUrl = location.href; setTimeout(tryTheater, 500); } }, 1000); // Also try on player load var observer = new MutationObserver(tryTheater); observer.observe(document.body, { childList: true, subtree: true }); })(); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Remove or un-stick sticky/fixed headers that block content (function() { function unstick() { document.querySelectorAll('header, nav, [role="banner"], .header, .navbar, .sticky, .fixed-top, [style*="position: fixed"], [style*="position:sticky"]').forEach(function(el) { if (el.style.position === 'fixed' || el.style.position === 'sticky' || getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') { el.style.position = 'static'; el.style.top = 'auto'; el.style.zIndex = 'auto'; } }); } unstick(); var observer = new MutationObserver(unstick); observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] }); })(); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + ' GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { // Universal Dark Mode - works on any site (function() { var enabled = true; function applyDarkMode() { if (!enabled) return; // Create style element if it doesn't exist var style = document.getElementById('universal-dark-mode-style'); if (!style) { style = document.createElement('style'); style.id = 'universal-dark-mode-style'; document.head.appendChild(style); } // Dark mode CSS - inverts colors but preserves images/video style.textContent = ' /* Invert everything except media */ html { filter: invert(1) hue-rotate(180deg) !important; background: #1a1a2e !important; } /* Restore images, videos, iframes, canvas */ img, video, iframe, canvas, svg, picture, [style*="background-image"] { filter: invert(1) hue-rotate(180deg) !important; } /* Preserve specific elements that should not be inverted */ .no-dark-mode, .no-dark-mode *, [data-theme="light"], [data-theme="light"], .ace_editor, .ace_editor *, .CodeMirror, .CodeMirror *, .monaco-editor, .monaco-editor *, .markdown-body pre, .markdown-body pre *, .highlight, .highlight *, pre code, pre code * { filter: none !important; } /* Fix common UI elements */ .modal, .popup, .dropdown-menu, .tooltip, .popover { filter: invert(1) hue-rotate(180deg) !important; background: #2d2d44 !important; border-color: #444 !important; } /* Scrollbars */ ::-webkit-scrollbar { background: #1a1a2e !important; } ::-webkit-scrollbar-thumb { background: #444 !important; } ::-webkit-scrollbar-thumb:hover { background: #555 !important; } /* Selection */ ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; } ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; } '; } function removeDarkMode() { var style = document.getElementById('universal-dark-mode-style'); if (style) style.remove(); } // Toggle with Alt+Shift+D document.addEventListener('keydown', function(e) { if (e.altKey && e.shiftKey && e.key === 'D') { e.preventDefault(); enabled = !enabled; if (enabled) { applyDarkMode(); console.log('[Universal Dark Mode] Enabled'); } else { removeDarkMode(); console.log('[Universal Dark Mode] Disabled'); } } }); // Apply on load applyDarkMode(); // Re-apply on dynamic content var observer = new MutationObserver(function(mutations) { if (enabled && !document.getElementById('universal-dark-mode-style')) { applyDarkMode(); } }); observer.observe(document.head, { childList: true }); console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle'); })(); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })(); GitHub - LoicChr/Banquo: Modeling species abundances using functional traits - abiotic filtering + competition · GitHub
Skip to content

Latest commit

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Banquo

This code is associated with the article: 'Predictions of biodiversity are improved by integrating trait-based competition with abiotic filtering' by Loïc Chalmandrier*, Daniel B. Stouffer, Adam S. T. Purcell, William G. Lee, Andrew J. Tanentzap and Daniel C. Laughlin

* main code developper and contact. (loic.chalmandrier@biologie.uni-regensburg.de)

Overview

The code models species abundances using functional traits, community data and environmental data. It assumes that species abundances are constrained by abiotic filtering (Traitspace model) and then competition (Banquo model). First species carrying capacities are modeled through the Traitspace model (using a trait-environment multivariate linear model) and then pairwise competitive interaction are calibrated using the Banquo model through a nloptr algorithm.

This project has received funding from the European Union’s Horizon 2020 research and innovation programme under the Marie Skłodowska- Curie grant agreement No 840946.

System requirements

R 4.1.0

Libraries

BayesianTools, corpcor, DEoptim, extraDistr, ggpubr, mclust, mgcv, plyr, pROC, purrr, tidyverse

Repository content

'./data/community.cover.23sp.csv': community matrix - site by species matrix
'data/cover_class.txt': contains the names and the minimum and maximum cover associated to each cover class
'data/data_ready.Rdata': contains the formatted data (output of the script data_prep.R)
'kettleholedata.23sp.csv': contains the functional trait data in each site and for each species
'traitspace_objs.Rdata': contains the output of the script traitspace_gen.R

'./lib/abgFunctions.R': functions to calculate community alpha and beta diversity
'./lib/interactionMatrix.R': functions to calculate the pairwise interaction matrix
'./lib/Likelihood.R': functions to calculate the likelihood of the Banquo models
'./lib/traitspace_and_banquo.R': functions to compute Traitspace and to compute Banquo

'./main/analysis_results.R': script using the final output to produce the table and figures of the article
'./main/assembly_models.R': Main script. It uses the output of traitspace_gen.R and compute the different Banquo models.
'./main/data_prep.R': script to prepare the data.
'./main/priors.R': script to create the prior density function, the prior sampling function and parameter bounds
'./main/traitspace_gen.R': script to compute Traitspace from the data.

'./results/\*.eps': Figures of the main article.
'./results/\*.jpg': Figures of the supplementary material.
'./results/tab.csv': Table 1 of the main article
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the abiotic and the abiotic + biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/abio_TRUE/\*/posterior_objs.Rdata': it contains most notably the posterior distribution of the null model and the biotic models. The objects are saved in subfolder named after the traits used to calibrate biotic interactions (including no interactions in the folder called 'none')
'./results/post_models/post_Model_\*.jpg': graphics of the posterior distribution of each assembly model.

How to use the repository

  1. set the working directory to the root of the repository.
  2. run data_prep.R: from the raw data, this script prepares the 'data/data_ready.Rdata' object
  3. run traitspace_gen.R: this will use the content of 'data/data_ready.Rdata' to compute Traitspace and create 'data/traitspace_objs.Rdata'
  4. run assembly_models.R: this script will run the Banquo models (more details of its functioning in the header of the script). after the models are run, the script saves the output in the 'posterior_objs.Rdata' objects
  5. run analysis_results.R: this script uses the posterior_objs.Rdata, the functions in ./lib/ and the objects in ./data/ to create the figures and the table from the article and the supplementary materials.

About

Modeling species abundances using functional traits - abiotic filtering + competition

Resources

Stars

3 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages