/**
* jQuery Plugin: Sticky Tabs
*
* @author Aidan Lister
// Set the correct tab when the page loads showStuffFromHash(context);
// Set the correct tab when a user uses their back/forward button $(window).on('hashchange', function() { showStuffFromHash(context); });
// Change the URL when tabs are clicked $('a', context).on('click', function(e) { history.pushState(null, null, this.href); showStuffFromHash(context); });
return this; }; }(jQuery));
window.buildTabsets = function(tocID) {
// build a tabset from a section div with the .tabset class function buildTabset(tabset) {
// check for fade and pills options var fade = tabset.hasClass("tabset-fade"); var pills = tabset.hasClass("tabset-pills"); var navClass = pills ? "nav-pills" : "nav-tabs";
// determine the heading level of the tabset and tabs var match = tabset.attr('class').match(/level(\d) /); if (match === null) return; var tabsetLevel = Number(match[1]); var tabLevel = tabsetLevel + 1;
// find all subheadings immediately below var tabs = tabset.find("div.section.level" + tabLevel); if (!tabs.length) return;
// create tablist and tab-content elements var tabList = $('
'); $(tabs[0]).before(tabList); var tabContent = $('
'); $(tabs[0]).before(tabContent);
// build the tabset var activeTab = 0; tabs.each(function(i) {
// get the tab div var tab = $(tabs[i]);
// get the id then sanitize it for use with bootstrap tabs var id = tab.attr('id');
// see if this is marked as the active tab if (tab.hasClass('active')) activeTab = i;
// remove any table of contents entries associated with // this ID (since we'll be removing the heading element) $("div#" + tocID + " li a[href='#" + id + "']").parent().remove();
// sanitize the id for use with bootstrap tabs id = id.replace(/[.\/?&!#<>]/g, '').replace(/\s/g, '_'); tab.attr('id', id);
// get the heading element within it, grab it's text, then remove it var heading = tab.find('h' + tabLevel + ':first'); var headingText = heading.html(); heading.remove();
// build and append the tab list item var a = $('' + headingText + ''); a.attr('href', '#' + id); a.attr('aria-controls', id); var li = $('
'); li.append(a); tabList.append(li);
// set it's attributes tab.attr('role', 'tabpanel'); tab.addClass('tab-pane'); tab.addClass('tabbed-pane'); if (fade) tab.addClass('fade');
// move it into the tab content div tab.detach().appendTo(tabContent); });
// set active tab $(tabList.children('li')[activeTab]).addClass('active'); var active = $(tabContent.children('div.section')[activeTab]); active.addClass('active'); if (fade) active.addClass('in');
if (tabset.hasClass("tabset-sticky")) tabset.rmarkdownStickyTabs(); }
// convert section divs with the .tabset class to tabsets var tabsets = $("div.section.tabset"); tabsets.each(function(i) { buildTabset($(tabsets[i])); }); };
Top (bio)statistics resources
In this blogpost, I share some of the top (bio)statistics resources which have helped me understand better stats behind research and (bio)data analysis. Statistics can be really fun, and building a strong foundation is essential for biological data analysis! These are some of my favourite books, videos and cool websites that have made my biostats learning easier. Hope you find them useful!
So if you are ready… let’s dive in!
Here are some resources to get you started in your biostats journey!
Online materials
- An Introduction to Statistical Learning (ISLR) – The gold standard for machine learning and statistical modeling, with R code examples. Free PDF available online.
- Modern Statistics for Modern Biology by Susan Holmes and Wolfgang Huber – Specifically designed for computational biology, covering essential statistical methods with real biological datasets. Available free online.
- Introductory Biostatistics with R – Excellent for beginners, covering fundamental biostatistical methods with clear R examples.
Video Courses and Youtube channels
- StatQuest with Josh Starmer – Phenomenal YouTube channel breaking down complex statistical concepts (PCA, regression, p-values) into digestible, visual explanations. His videos are legendary in the community.
- Harvard’s Statistics 110: Probability – Free course by Joe Blitzstein, excellent foundation in probability theory.
- Coursera: Statistics with R Specialization (Duke University) – Comprehensive series covering inference, regression, and Bayesian statistics.
Books
I haven’t read them all, but here are some recommendations:
Interactive Learning
- R for Data Science by Hadley Wickham – Essential for learning data manipulation and visualization in R, freely available online.
- Seeing Theory – Beautiful interactive visualizations of probability and statistics concepts.
- DataCamp: Statistics Fundamentals with R – Interactive coding exercises (subscription-based but often has free trials).
Reference Materials
- OpenIntro Statistics – Comprehensive, free textbook covering fundamentals with great examples.
- Cross Validated – The statistics Q&A community for troubleshooting and deeper understanding.
- The Elements of Statistical Learning – Advanced text for when you’re ready to dive deeper into machine learning theory.
Practical Application
- Bioconductor Course Materials – Free workshops and vignettes specifically for biological data analysis in R.
- STAT 545 (UBC) – Public course materials covering data wrangling, visualization, and analysis in R for researchers.
What did you think of these biostatistics resources and tools?
Are there any other resources you would like to see here?
If you have recommendations on more bioinformatic tools for beginners, intermediate or advance levels, leave a comment in the comments section below so I can add it to the list:)
Additional resources
You might be interested in…
- Top ML and AI resources
- Useful resources for bioinformatics
- Top resources to learn biostatistics
- Learn to code as a biologist
Squidtastic! You made it till the end! Hope you found this post useful.
If you have any questions, or if there are any more topics you would like to see here, leave me a comment down below.
Otherwise, have a very nice day and… see you in the next one!
Before you go, you might want to check:
// add bootstrap table styles to pandoc tables function bootstrapStylePandocTables() { $('tr.odd').parent('tbody').parent('table').addClass('table table-condensed'); } $(document).ready(function () { bootstrapStylePandocTables(); });