Syllabus

Course Overview

This is a 3 credit course offered as an elective.

Instructor

TA

Meetings

  • MWF
  • 11:15-12:05
  • 401 Riley-Robb Hall

Course Description

Understanding data is an increasingly integral part of working with environmental systems. Data analysis is a critical part of understanding system dynamics and projecting future conditions and outcomes. This course provides an overview of a generative approach to environmental data analysis: instead of treating statistical methods as a menu of named procedures to be looked up and applied, we treat every analysis as a model of how the data came to be, which we can write down, simulate from, fit, and test.

That framing is the spine of the course, and we will run the same four-step loop on every model we meet:

  1. Why that distribution and link? What constraints are you willing to state about the process, and what distribution do those constraints imply?
  2. Simulate. Generate data from the model you just specified.
  3. Fit. Estimate the parameters from data, by maximum likelihood or from a posterior.
  4. Test. Did you get back what you put in? What does the model fail to reproduce?

Step 4 is where most of the learning happens, and it is the step most often skipped in practice. We will not skip it.

In particular, over the course of the semester, we will:

  • conduct exploratory analyses and build visualizations of environmental datasets;
  • recover familiar named statistical tests by building their null models from scratch and simulating from them;
  • specify generative models for environmental data, justifying the distribution and link from stated constraints;
  • quantify and propagate uncertainty using Monte Carlo, the bootstrap, and Bayesian inference;
  • compare competing models on evidence, and say what each criterion is actually measuring;
  • apply all of this where it is hardest, on extreme values and on data with gaps.

What Should You Leave This Course With

Statistics should not be a black box. If there is one thing I want you to leave this course with, it is this. A t-test is not a black box that emits a p-value; it is a model of how your data would look if nothing were going on, and you can build that model yourself. Once you can, you can also build the one that fits your problem, which is usually not the one in the textbook or software package.

Learning Outcomes

BEE 4850

After completing this class, students will be able to:

  1. Specify a generative model for an environmental dataset;
  2. Calibrate a generative model to environmental observations, including records with missing values;
  3. Test the predictive consequences of a model’s assumptions as hypotheses through simulation;
  4. Justify a choice among competing models on evidence, distinguishing criteria that estimate predictive accuracy (cross-validation, AIC, WAIC/DIC) from those that do not (BIC);
  5. Propagate uncertainty in a model’s parameters through to its predictions using Monte Carlo, the bootstrap, and Bayesian inference;
  6. Diagnose when a dataset does not support a model’s parameters or a requested extrapolation, as arises with extreme values and incomplete records;
  7. Identify the statistical assumptions underlying a published environmental data analysis, including those the authors do not state.

BEE 5850

Students in BEE 5850 will meet outcomes 1–7 above, and will additionally be able to:

  1. Evaluate the statistical content of published research;
  2. Specify and defend a generative model against a competing specification.

Prerequisites & Preparation

The following courses/material would be ideal preparation:

  • One course in programming (e.g. CS 1110, 1112 or ENGRD/CEE 3200)
  • One course in probability or statistics (ENGRD 2700, CEE 3040, or equivalent)

In the absence of one or more these prerequisites, you can seek the permission of instructor.

TipWhat If My Programming or Stats Skills Are Rusty?

If your programming or statistics skills are a little rusty, don’t worry! We will review concepts and build skills as needed. Weeks 1–2 are deliberately a re-grounding in probability and simulation before anything new gets built on top of them.

Typical Topics

  • Exploratory data analysis and principles of data visualization;
  • Probability review and Monte Carlo simulation;
  • Linear regression, and regression as a probability model;
  • Null models, significance, and both flavors of the bootstrap;
  • Bayesian inference and Markov chain Monte Carlo;
  • Generalized linear models and maximum entropy;
  • Time series and autocorrelation;
  • Extreme values: block maxima, peaks over thresholds, nonstationarity;
  • Model evaluation: cross-validation, KL divergence, AIC, WAIC/DIC, and BIC;
  • Missing data and multiple imputation.

Course Meetings

This course meets MWF from xx-xx in xx Riley-Robb. In addition to the course meetings (a total of 42 lectures, 50 minutes each), the term project will be due during the university finals period, including presentations. Students can expect to devote, on average, 8 hours of effort during the exam period.

Course Philosophy and Expectations

The goal of our course is to help you gain competency and knowledge in the area of data analysis. This involves a dual responsibility on the part of the instructor and the student. As the instructor, my responsibility is to provide you with a structure and opportunity to learn. To this end, I will commit to:

  • provide organized and focused lectures, in-class activities, and assignments;
  • encourage students to regularly evaluate and provide feedback on the course;
  • manage the classroom atmosphere to promote learning;
  • schedule sufficient out-of-class contact opportunities, such as office hours;
  • allow adequate time for assignment completion;
  • make lecture materials, class policies, activities, and assignments accessible to students.

I encourage you to discuss any concerns with me during office hours or through a course communications channel! Please let me know if you do not feel that I am holding up my end of the bargain.

Students can optimize their performance in the course by:

  • attending all lectures;
  • doing any required preparatory work before class;
  • actively participating in online and in-class discussions;
  • beginning assignments and other work early;
  • and attending office hours as needed.

Textbooks and Course Materials

There is no required textbook. The anchor materials for this course are the instructor’s notes and slides, which are linked from the schedule.

For those who want a book to read alongside the course, the following are useful, and are on reserve rather than required:

  • McElreath, R. (2020). Statistical Rethinking: A Bayesian Course with Examples in R and Stan, 2nd ed. Chapman and Hall/CRC. doi:10.1201/9780429029608. This is where the four-step loop and the maximum-entropy justification for distribution choice come from. Note that it is Bayesian throughout and this course deliberately is not, so read it for the framing rather than as a course companion.
  • Coles, S. (2001). An Introduction to Statistical Modeling of Extreme Values. Springer. The standard reference for the extremes weeks.

Readings assigned during the semester are journal articles and will be provided as PDFs on Canvas through Perusall, and linked from the schedule where open access or the Cornell library permits.

BEE 4850 vs. BEE 5850

This course is offered at both the undergraduate (4850) and graduate (5850) level. The two sections share lectures, homework, and quizzes, and differ in the work required on three of the five assessments.

Assessment BEE 4850 BEE 5850
Homework 9 assignments identical
Quizzes 6 quizzes, lowest dropped identical
Mini projects Bayesian treatment optional on MP1; MP2 computes WAIC from a provided posterior sample Bayesian treatment required on MP1; MP2 computes WAIC from your own posterior
Term project Student-chosen question, including the conventional-analysis comparison Additionally: your specification defended against a named alternative, with a simulation study establishing when the two diverge and what evidence would distinguish them
Readings 8 readings and a one-page analysis 8 readings and a full referee report (2–3 pages) on a paper of your choosing, written to the standard a journal would expect, with a recommendation

Community

Diversity and Inclusion

Our goal is for this class to be a learning environment in which everyone can participate fully. Diversity of background and perspective makes for better engineering and better science, and I want the classroom to reflect that. If anything — in the material, in how the class is run, or in how people treat each other — is making that harder for you, please tell me.

ImportantPlease, Be Excellent To Each Other

Treat your classmates and the course staff with respect, in class, in office hours, and on Ed Discussion. Disagreement about statistics is welcome and encouraged; dismissiveness toward a classmate who is still working something out is not.

Student Accommodations

If you have a disability-related need for accommodations in this class, please get an accommodation letter from Student Disability Services and speak with me as early in the semester as possible so we can put arrangements in place. Accommodations cannot be applied retroactively, so earlier is genuinely better.

If you experience a short-term disability or an injury during the semester, let me know and we will work something out.

Course Communications

Use Ed Discussion for all class-related questions. This is not because I don’t want to hear from you — it is because a question you have is almost always a question somebody else has, and answering it in one place helps everybody. Reserve email for matters that are genuinely private (accommodations, personal circumstances, grades).

TipEd Tips
  • Search before posting; there’s a decent chance your question has been asked.
  • Post questions publicly unless there’s a reason not to. You can post anonymously to your classmates if you prefer.
  • If you’re asking about code, link to the relevant file and line in your GitHub repository rather than pasting a large block.
  • Answer each other’s questions! This is encouraged and is a good way to check whether you actually understand something.

Mental Health Resources

Your wellbeing matters more than this class does. If you are struggling, please reach out — to me, to your advisor, or to Cornell Health (607-255-5155). Counseling and Psychological Services (CAPS) offers same-day appointments, and Cornell’s crisis resources are available 24/7.

ImportantMental Health And This Class

If something is going on that is getting in the way of your work in this course, tell me early, and in general terms if you prefer — you do not owe me any details. The course has a dropped homework assignment, a dropped quiz, and a dropped reading built into it precisely so that a bad week costs you nothing. Those are there to be used. What I cannot easily fix is a problem I hear about for the first time in May.

Course Policies

More detail on all of these is on the course policies pages.

Attendance

Attendance is not graded, but quizzes are given in class and cannot be made up outside of the university’s accommodation processes. If you must miss class, get notes from a classmate and come to office hours with specific questions.

TipWhat If I’m Sick?

Please stay home. Genuinely — do not come to class sick. Contact me as soon as you can if you will miss a quiz, and we will use the drop or, if it comes to that, forgive the quiz and reweight.

Academic Integrity

Cornell’s Academic Integrity Code applies to all work in this class.

In practice, for this course:

  • Homework and mini projects: collaboration is encouraged. Write up your own solution, in your own words, and list everyone you worked with.
  • Quizzes: closed-book, closed-note, closed-everything. No collaboration of any kind.
  • Term project: your own work (or your pair’s), with all sources cited.
  • Cite every outside source you use, including AI tools — see the AI/ML resource policy.
WarningWhy Can’t I Consult Old Solutions?

Solutions from previous offerings of this course, or solutions circulating online, are off limits. This is partly an integrity matter, but mostly a practical one: the point of a homework assignment is the attempt, and reading a solution before attempting it destroys the thing the assignment is for. You will feel like you understood it, sit a quiz, and discover that you didn’t. I have watched this happen many times.

AI/ML Resource Policy

You may use LLMs and similar tools, and you must disclose it when you do — describe what you asked and how you used the output. See the integrity policy for the full version.

A warning specific to this course: these tools are quite good at producing statistical analysis that looks right but is not based on clear and transparent reasoning.

Office Hours

Office hours are listed on the course home page. They are for whatever you need them for — questions on the material, help getting unstuck on an assignment, or talking through your project.

TipWhat If I Can’t Make Office Hours?

Post on Ed Discussion, or email me to set up another time. If the scheduled hours don’t work for a large number of you, tell me and I will move them.

Assessments

Technologies

We will use Canvas as a gradebook and to distribute PDFs of readings (also made available through the website when possible, via the Cornell library). Ed Discussion will be used for course communications. Assignments will be submitted and graded in Gradescope. Mini projects are distributed as GitHub repositories that you fork to your own account.

Students can use any programming language they like to solve problems, though we will make notebooks and package environments available for Julia (which may help structure your assignments if you use a different language) via GitHub. If students use a language other than Julia, we may be limited in the programming assistance we can provide (though we’re happy to try to help!).

We recommend students create a GitHub account and use GitHub to version control and share their code throughout the semester.

Grading

Final grades will be computed based on the following assessment weights:

Assessment Weight
Homework 20%
Quizzes 25%
Mini Projects 20%
Term Project 25%
Readings 10%

The following grading scale will be used to convert the numerical weighted average to letter grades:

Grade Range
A+ 97–100
A 93–97
A- 90–93
B+ 87–90
B 83–87
B- 80–83
C+ 77–80
C 73–77
C- 70–73
D+ 67–70
D 63–67
D- 60–63
F < 60

Homework

There will be nine homework assignments over the semester, each worth 20 points. These are pen-and-paper, in the same idiom as the quizzes, plus one short computational item. Expect each to take about 45 minutes: roughly 30 minutes of written work and 15 minutes at the keyboard.

Homework exist for one reason: to rehearse the quiz. Previous offerings of this course assessed you with 25-minute closed-book quizzes while the only practice was two-week computational homework. Those measure different things, and only one of them was being practiced. The homework assignments fix that.

Each assignment has three problems:

  • Problem 1 (7 points) — a short scenario with three sub-parts, walking through the loop on one object;
  • Problem 2 (7 points) — three standalone short questions, exactly in the quiz’s format;
  • Problem 3 (6 points) — the computational item, ending in a figure and a sentence of interpretation.

Some notes on homework logistics:

  • Homework are due at 9:00pm Eastern on the due date (always a Friday). Submit to Gradescope as a PDF with pages tagged.
  • Late work is accepted up to one day late, and the solution key is posted when that window closes — see the callout below.
  • The lowest homework assignment is dropped automatically.
  • Every question is checked against the posted key, and two or three questions per assignment receive written feedback. Which questions get written feedback varies from week to week and is not announced in advance.
  • The computational item counts. An assignment submitted without a serious attempt at all three problems, including the computational one, will not receive credit.
ImportantWhy The Key Goes Up A Day After The Deadline

The solution key for each homework assignment is posted when the late window closes, not when the assignment is due. This is so that a one-day-late submission isn’t just a copy of the key.

It also means the key is always in your hands well before the quiz it rehearses — at minimum two days, usually six or more. Written feedback on the marked questions may arrive after the quiz, and that’s fine: the forms of question recur across all six quizzes, so feedback on how you stated a model in February is still useful in April.

Quizzes

Quizzes will be given in class at the end of several units. These will be in the first half of the relevant class, approximately 25 minutes long. No materials (books, notes, computers, or calculators) are allowed. Quizzes will be scanned into Gradescope for grading.

There are six quizzes, and the lowest is dropped, for students in both 4850 and 5850. The material covered will be specified ahead of time in class and on Ed Discussion. As a rule, a quiz never covers material from the same week it is given — every quiz covers through the previous Friday at the latest.

The emphasis is on concepts. There is no programming on a quiz and nothing requiring memorized formulas. You will be asked to write out models and their assumptions, define properties, read diagnostic plots, interpret results, and do small calculations — which is exactly what the homework assignments rehearse.

Readings

Readings will be assigned throughout the semester to help you engage with the background and the uses of the material for that week. There are 8 required readings, provided as PDFs on Canvas through Perusall and (when possible through open access or the Cornell library) linked from the website.

Students are expected to demonstrate engagement through collaborative annotations — your own comments on parts you found interesting or had questions about, or responses to other students’ annotations. You should also post an overall reflection, synthesizing your takeaways with content from this or other classes, on Ed Discussion. Both should be completed by the start of the first lecture the next week. You are not graded on the quantity of annotations, but on the degree to which they reflect critical engagement. One reading assignment will be dropped automatically.

Four questions are worth asking of every reading, and they are the same four all semester:

  1. What generative model did the authors assume?
  2. What did they simulate, and what did they take on faith?
  3. How did they check the model?
  4. What would you have checked that they did not?

All students write one discussion paper late in the semester applying these four questions at length:

  • BEE 4850: a one-page analysis of a paper of your choosing or one from the pool.
  • BEE 5850: a full referee report, 2–3 pages, written to the standard a journal would expect, including a recommendation (accept / minor revision / major revision / reject) and the reasoning behind it. Discuss your choice of paper with me to make sure it is appropriate.

Mini Projects

There are two mini projects, each computational and unit-scale, distributed as GitHub repositories that you fork to your own account. These may be completed individually or in pairs.

  • Mini Project 1 — Regression and Simulation. Assigned Monday, March 1; due Wednesday, March 17. Specify a linear generative model for an environmental dataset, simulate from it, fit it, check whether you recover what you put in, and put uncertainty on the fit with the bootstrap. For 5850, the Bayesian treatment is required; for 4850 it is an optional extension.
  • Mini Project 2 — Extremes, with Model Comparison. Assigned Monday, April 5; due Friday, May 7. Fit a GEV and a GPD to a real record, fit stationary and nonstationary variants, and compare them on evidence — cross-validation where defensible, plus WAIC, AIC, and BIC — saying explicitly what each is measuring and why they may disagree. For 5850, WAIC must be computed from your own posterior rather than a provided sample.
NoteMP2 Has Gaps In It, On Purpose

The record you are given for MP2 has missing months, because real gauge records do. Computing an annual maximum from a year with a three-month gap is a genuine open problem, not an exercise — is that year’s maximum real, or an artifact of what wasn’t recorded? Missing-data mechanisms are covered in lecture during MP2’s window, which is deliberate.

Term Project

Throughout the semester, students will apply the concepts and methods from class to a question and data set of their own choosing. If you do not have a data set in mind, come talk to me and we will find one that aligns with your interests.

The term project can be completed individually or in groups of 2. There are three deliverables:

  • A proposal (no more than 2 pages, 11 point font, 1 inch margins, not including figures or references), due Friday, March 26, including:
    • The underlying science question for your project and any associated hypotheses;
    • The dataset(s) you will analyze and use to test your hypotheses;
    • Statistical model(s) for the hypotheses and your planned strategy for analysis.
  • A check-in, due Friday, April 23. This is a ten-minute conversation in office hours rather than a written deliverable, graded pass/fail on having something to show.
  • A final report, due during the finals period. No more than 5 pages (11 point font, 1 inch margins), not including references and figures. More details and rubrics will be provided later in the semester.

The report must include a section stating what a conventional canned analysis of your data would have concluded, and why yours differs. If it doesn’t differ, say so and explain why — that is a legitimate finding, and sometimes the standard analysis is the right one.

Students in BEE 5850 must additionally defend their specification against a named alternative specification, including a simulation study establishing the conditions under which the two diverge and what evidence would distinguish them.

ImportantThe Proposal Is Where Problem Formulation Gets Assessed

It is the only place in this course where you decide what question is worth asking of what data, and it is weighted accordingly rather than treated as an administrative step. A proposal that cannot say what would count as an answer does not yet describe a project. Start thinking about this well before March.

Presentations will be held during the university finals period, at a date and time assigned by the Office of the University Registrar. In addition to work completed during the semester, students can expect to devote approximately 6 hours to the term project during the exam period.

Late Work Policy

Homework may be submitted up to 24 hours late for full credit, after which the solution key is posted and no further submissions can be accepted. The lowest homework assignment is dropped.

Mini projects and project deliverables may be submitted up to 24 hours late at a 50% penalty, and will not be accepted after that point. This policy may seem strict, but allows for prompt release of solutions and discussion of assignments. Please reach out as soon as possible (ideally before the due date) if legitimate circumstances emerge which prevent you from submitting work on time; we will make accommodations for approved reasons, which might include a limited extension or forgiving the assignment.

Regrade Requests

Regrade requests can be submitted up to one week after the graded work is released on Gradescope.

All regrade requests must include a brief justification for the request or they will not be considered. Good justifications include (but are not limited to):

  • My answer agrees with the posted solution, but I still lost points.
  • I lost 4 points for something, but the rubric says it should only be worth 2 points.
  • You took points off for something, but it’s right here.
  • My answer is correct, even though it does not match the posted solution; here is an explanation.
  • There is no explanation for my grade.
  • I got a perfect score, but my solution has a mistake (you will receive extra credit for this! see below!)
  • There is a major error in the posted solution; here is an explanation (full credit for everyone, but Prof. Srikrishnan will decide what constitutes a “major error”! see below!).
ImportantWe Can Only Grade What You Submitted

All regrades will be assessed based only on the submitted work. You cannot get a higher grade by explaining what you meant (either in person or online) or by adding information or reasoning to what is submitted after the fact. The goal of the regrade is to draw attention to a potential grading problem, not to supplement the submission.

The first regrade request for any submission will be handled by the person who graded that problem. If the submission was graded by the TA, additional regrade requests for the same submission will be handled directly by the instructor. Once Prof. Srikrishnan issues a final response to a regrade request, further requests for that submission will be ignored.

WarningRegrade Requests Can Be A Gamble!

While you should submit regrade requests for legitimate errors, using them for fishing expeditions can also result in lost points if the TA or Prof. Srikrishnan decide that your initial grade was too lenient or if additional errors are identified.

TipWhat If I Find A Different Type of Mistake?
  • If you submit a regrade request correctly reporting that a problem was graded too leniently — that is, that your score was higher than it should be based on the rubric — your score will be increased by the difference. For example, if your original score on a problem was 8/10 and you successfully argue that your score should have been 3/10, your new score will be 13/10. However, don’t fish — your grade might be lowered if the TA finds an independent mistake while regrading.
  • If a significant error is discovered in a posted solution, everyone in the class will receive full credit for the (sub)problem. Prof. Srikrishnan will decide what is “significant”.