Summary and Setup
This lesson is about Interoperability in Climate Sciences.
Target audience
This lesson is intended for researchers in the climate and atmospheric sciences who handle multidimensional NetCDF datasets and wish to make their data and software more reusable by others.
Learning objectives
By the end of this lesson, learners will be able to:
Recognize the importance of interoperability for data reuse
Identify the key elements of interoperable data format
Explain when a NetCDF dataset is interoperable
Evaluate adherence of a NetCDF files to CF convention.
Access and analyse NetCDF files using OpenDAP and Python
Detect interoperability “holes” in a specific data format / data package
To follow this lesson, learners should already be able to have :
- Working knowledge in Python (write and execute short scripts in Python)
- Awareness of NetCDF format
FIXME: Setup instructions live in this document. Please specify the tools and the data sets the Learner needs to have installed.
Data Sets
Make sure we the instructors create a toy dataset from existing ones in 4TU.researchdata also hosted in OpenDAP server and publish it again in 4TU.researchdata and OpenDAP server.
-
We are considering :
We want to modify one real dataset , such as it gets less complex and “more incomplete” for the part of reading and manipulating the dataset.
Why: The IDRA dataset has a license to allows us to reuse and also it has bigger size that we want to showcase how we can retrieve data stored in the web via a protocol that do not require the download of the data.
Implications:
We need to decide on which steps to take to modify the real good dataset.
We need to create the toy data and stored it back to 4tu to be able to showcase the web retrieval.
Software Setup
- Python 3 distribution
- Install libraries needed or live in the workshop
Python 3 Distribution
To download the latest Python 3 distribution for your operating system, please head to Python.org.
If you are on Linux, it is likely that the system Python 3 already installed will satisfy the requirements of this course (the material has been tested using the standard Python distribution version 3.11 but any supported version should work).
The course uses venv for virtual environment management
and pip for package management. The material has not been
extensively tested with other Python distributions and package managers,
but most sections are expected to work with some modifications. For
example, package installation and virtual environments would need to be
managed differently, but Python script invocations should remain the
same regardless of the Python distribution used.
Recommended Python Version
We recommend using the latest Python version but any supported version should work. Specifically, we recommend upgrading from Python 2.7 wherever possible; continuing to use it will likely result in difficulty finding supported dependencies or syntax errors.
You can test your Python installation from the command line with:
BASH
$ python3 --version # on Mac/Linux
$ python --version # on Windows — Windows installation comes with a python.exe file rather than a python3.exe file
If you are using Windows and invoking python command
causes your Git Bash terminal to hang with no error message or output,
you may need to create an alias for the python executable
python.exe, as explained in the troubleshooting
section.
If all is well with your installation, you should see something like:
OUTPUT
Python 3.11.4
To make sure you are using the standard Python distribution and not some other distribution you may have on your system, type the following in your shell:
This should enter you into a Python console and you should see something like:
BASH
Python 3.11.4 (main, Jun 20 2023, 17:23:00) [Clang 14.0.3 (clang-1403.0.22.14.1)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>
Press CONTROL-D or type exit() to exit the
Python console.
venv and pip
If you are using a Python 3 distribution from Python.org, venv and
pip will be automatically installed for you. If not, please
make sure you have these two tools (that correspond to your Python
distribution) installed on your machine.
IDE
VS Code
Alternatively, you can use Microsoft’s Visual Studio Code (VS Code).