This Project Pythia Cookbook covers empirical orthogonal function analysis and its application to climate data.
Empirical orthogonal function (EOF) analysis is an essential tool for studying the variability of the atmosphere-ocean system. Meteorological and oceanographic data is noisy and multidimensional, but an EOF analysis allows us to pull out patterns from the data that might otherwise be difficult to find. The goal of this cookbook is to provide background and context to the analysis alongside practical examples of carrying out the analysis using Python packages.
This cookbook currently has one section that covers the basics of EOF analysis.
This section includes two notebooks:
- Introduction to EOFs
- Finding Climate Modes with EOFs
You can either run the notebook using Binder or on your local machine.
The simplest way to interact with a Jupyter Notebook is through
Binder, which enables the execution of a
Jupyter Book in the cloud. The details of how this works are not
important for now. All you need to know is how to launch a Pythia
Cookbooks chapter via Binder. Simply navigate your mouse to
the top right corner of the book chapter you are viewing and click
on the rocket ship icon, (see figure below), and be sure to select
“launch Binder”. After a moment you should be presented with a
notebook that you can interact with. I.e. you’ll be able to execute
and even change the example programs. You’ll see that the code cells
have no output at first, until you execute them by pressing
{kbd}Shift
+{kbd}Enter
. Complete details on how to interact with
a live Jupyter notebook are described in Getting Started with
Jupyter.
If you are interested in running this material locally on your computer, you will need to follow this workflow:
-
Clone the
https://github.com/ProjectPythia/eofs-cookbook
repository:git clone https://github.com/ProjectPythia/eofs-cookbook.git
-
Move into the
eofs-cookbook
directorycd eofs-cookbook
-
Create and activate your conda environment from the
environment.yml
fileconda env create -f environment.yml conda activate eofs-cookbook-dev
-
Move into the
notebooks
directory and start up Jupyterlabcd notebooks/ jupyter lab