/spatiotemporal_data_analysis

Alex fork of Kevin's "Class files for GEOG696C Spatiotemporal Data Analysis"

Primary LanguageJupyter Notebook

Spatiotemporal Data Analysis

Overview

This is a graduate course taught as GEOG696c (the physical geography seminar) at the University of Arizona. The class was last taught in Fall 2023. The full syllabus is available here.

This course is designed as a graduate level class in a workshop format to give students a theoretical framework, practical experience, expert knowledge, and statistical tools for analyzing spatiotemporal datasets. It is fundamentally about building tools and practical understanding so that students can intelligently apply these techniques in their own research. Topics include basic matrix algebra and statistics, exploratory data analysis, field correlation and regression analysis, autocorrelation and its statistical consequences in time and space, parametric and non-parametric significance testing and error analysis, empirical orthogonal functions including rotation, singular spectrum analysis, maximum covariance and canonical correspondence analysis, and traditional and multitaper spectral analysis. The course encompasses instruction and training in Python and in the use and manipulation of large multi-dimensional datasets.

The major outcome for the class for each student will be a new and independent analysis of a substantial space-time dataset, a formal manuscript describing the motivation, methods, and results of this analysis, and a professional oral presentation. Students are encouraged to bring with them or seek out data relevant to their research to use for their final project. Ideally, students' final projects will provide the material for a thesis chapter and/or peer-reviewed article.

The course was inspired by and initially based on an objective analysis/spatiotemporal data analysis class taught by Mike Evans.

General Schedule

August 23 to August 31 - Introduction to Python, NumPy, Pandas, Matplotlib (Part 1 and Part2) and Linear Algebra

August 31 to September 12 - Variance, covariance, and correlation -- Part 1 and Part 2 -- plus an introduction to xarray

September 14 to September 21 - Introduction to Empirical Orthogonal Functions -- Part 1 and Part 2 -- plus mapping with Matplotlib and Cartopy and singular value decomposition on the covariance matrix vs. the data matrix.

September 21 to September 28 - EOF significance, meaningfulness, and interpretation, with short lectures on missingness and randomness.

September 28 to October 10 - EOF interpretation and orthogonal rotation

October 17 to October 26 - Analysis of coupled fields, field correlation, an alternative field correlation approach if you need local significance levels, compositing, and field significance and false discovery.

October 31 to November 7 - Spectral analysis (simple periodic signals and auto-correlation)

November 9 to November 14 - Frameworks for spatiotemporal data analysis

November 14 to December 5 - Student project work and presentations

Recommended Software Installation

This Youtube video from Visual Studio Code (the integrated coding environment we'll use in this class) can get you up and running pretty quickly . They show installation in Windows, so macOs will be slightly different. We'll also go this live in class on August 24th.

Here are the basic steps:

License

This work is licensed under a Creative Commons Attribution-NonCommercial 3.0 License (CC BY-NC 3.0 US).

You are welcome to use any of this material, so long as it is for non-commercial purposes.