Fork me on GitHub

Quantitative Biodiversity (BIOL Z620)

Biodiversity refers to the variation among life and extends from within populations to across species and entire ecosystems. Due to one of the most rapid rates of extinction in Earth's history, the world is currently facing a biodiversity crisis. Consequently, it is imperative that we have an understanding of biodiversity and how to characterize and quantify it.

Student Portal

Course Syllabus (Spring 2019)

Course summary

This course will introduce students to the concepts, patterns, metrics, and tools that are common to the study of biodiversity. Each class meeting will consist of a short lecture followed by computational exercises designed to analyze aspects of biodiversity using data from tree, bird, mammal, and microbial systems. Students will learn how to calculate diversity metrics, generate and quantify diversity relationships, visualize multivariate data, and test hypotheses with an array of statistical techniques. We will learn how to map traits to phylogenetic trees and make inferences about the phylogenetic structure of communities. Concepts related to taxonomic and phylogenetic diversity will be extended to understand spatial and temporal dynamics. Students will be introduced to modern statistical computing and graphics environments, as well as the version control tools Git and GitHub. The class will culminate with student-led team projects.

Course Director

Dr. Jay T. Lennon

261B Jordan Hall (office)

812-856-0962 (office phone)

Other Instructors

Dr. Daniel Schwartz

324B Jordan Hall (office)

Dr. Jordan Bird

A306 Jordan Hall (office)

Class meetings

9:30-12:00 Friday, room 16 in Kirkwood (KH), January 11 - March 1, 2019

Recommended Textbooks

Computational Approaches to Biodiversity Using R And GitHub

In this course, we will be using R and GitHub as complimentary tools for learning quantitative biodiversity. R is a free, open-source programming language that is widely used for data visualization and statistics. Specifically, RStudio is an integrated development environment (IDE) that will allow us to interface with other packages, including Markdown and LaTeX. Last, we will be using GitHub as a version control system to track, record, and recover changes throughout the history of a project.
GitHub is the premier tool for collaborative and social development of computing-based projects, allowing instructors, students, and collaborators to develop a project (or class) from remote locations. We will use GitHub to host course material including this syllabus, code, and exercises. Each student will have their own private GitHub repository and will use GitHub to store and submit their work.

Other Course Resources

We can add paper and citations to our Quantiative Biodiversity Mendeley group.
PDF versions of required papers, along with slides from class lectures can be posted on the IU's learning management system, Canvas.

Learning Objectives

Quantitative Biodiversity is organized around the following learning objectives

  Upon completion of the course, students will be able to:

    1. Identify and discuss core concepts of biodiversity

    2. Quantify and compare measures of taxonomic diversity within and among samples

    3. Quantify the distribution of traits and species in a phylogenetic context

    4. Evaluate biodiversity in spatial and temporal contexts

    5. Use the R programming language to analyze and visualize biodiversity data

    6. Use GitHub for conducting and managing reproducible research projects

Student Assessment

Late Assignments

If submitted less than 24 hours after the deadline, grade on that assignment will automatically be reduced 50 % prior to grading.
Assignments submitted > 24 hours after deadline will receive no credit.
You will receive an incomplete for the course if you receive two or more no-credit evaluations or if you receive four or more half-credit evaluations.

Academic Integrity

As a student at IU, you are expected to adhere to the standards and policies detailed in the Code of Student Rights, Responsibilities, and Conduct. When you submit an assignment with your name on it in this course, you are signifying that the work contained therein is all yours, unless otherwise cited or referenced. Similar standards are assumed for presentations and the generation of web-based media. Any ideas or materials taken from another source for either written or oral use must be fully acknowledged. If you are unsure about the expectations for completing an assignment, be sure to seek clarification beforehand. All suspected violations of the Code will be handled according to University policies. Sanctions for academic misconduct may include a failing grade on the assignment, reduction in your final grade, a failing grade in the course, among other possibilities, and must include a report to the Dean of Students.


Given the small number of class meetings, attendance is required. Absences will negatively affect a student's grade. Any conflicts should be communicated to the instructor as early as possible, preferably before the beginning of the semester.

Special Needs

Please contact the course director as soon as possible if you have a documented disability that will interfere your performance of the activities planned for the class.


Week 0

Introduction to the computing environment

Prior to our first class meeting, students will install software, conduct basic exercises, and read introductory material.

Week 1

Introduction to Quantitative Biodiversity

What is biodiversity and why do we study it? After introducing the course, we will provide an overview of GitHub and R. Laboratory exercises will include an exercise in GitHub followed by exercises in R such as data manipulations, plotting, and simple statistics.

Week 2

Diversity Within a Sample (i.e., alpha-Diversity)

We will begin by introducing one the primary ecological data structures: the site-by-species matrix. From this, we will derive the core components of diversity: richness and evenness. We will integrate richness and evenness components by covering diversity metrics and the species abundance distribution (SAD).

Week 3

Control Flow
We will introduce basic programming methods that are useful for writing code (e.g., if-then statements), which are useful for a range of applications. We will apply these tools to lab-sampling exercises, and introduce resampling procdures.

Week 4

Diversity Among Samples (i.e., beta-Diversity)

We will learn how to quantify diversity among samples (beta-diversity). We will then focus on the visualization of beta-diversity, which will include heatmaps, hierarchical clustering, and multivariate ordination.

Week 5

Diversity Among Samples (i.e., beta-Diversity)
We will continue with topics from previous week while also highlighting statistical approaches that allow one to test hypotheses about beta-diversity.

Week 6

Phylogenetic Diversity: Traits

We will learn how to make phylogenetic trees in R. After this, we will use contributed R packages to map traits onto trees, peform phylogenetically independent contrasts, and test for phylogenetic signal.

Week 7

Phylogenetic Diversity: Communities

We will continue to learn about the integration of phylogenetic for questions related to biodiversity. Specifically, we will think about phylogenetic community ecology, by introducing tools such as unifrac, net-relatedness index (NRI), and nearest taxon index (NTI).

Week 8

Projects and Synthesis: GitOn

We will use this class period for student presentations of their independent projects while recapping major concepts and tools, in addition to "big data" approaches to addressing global biodiversity issues.