Python for Marine Science Course
This course prepares you to use Python as an everyday working tool in oceanography and marine science. Starting from the fundamentals of the language, you will move on to the key scientific libraries, such as NumPy, Pandas and Xarray, to read NetCDF and CSV data, analyse CTD profiles, buoy series and satellite products, and create clear, reproducible oceanographic maps and plots, with no prior programming experience needed.
Prior knowledge check
These are the skills this programme gives you. Tick the ones you already master and we will tell you which part of the syllabus is for you.
You are starting from scratch in this subject. The programme is designed precisely for that.
What is the Python for Marine Science Course?
This short course prepares you to make programming your best ally in studying the ocean. You will learn Python from scratch in a Jupyter environment, work with arrays, CSV files and time series using NumPy and Pandas, open and explore multidimensional NetCDF data with Xarray to compute climatologies and anomalies, produce vertical profiles, T-S diagrams and maps with Matplotlib and Cartopy, and apply it all to CTD casts, Argo floats, buoys, tide gauges and satellite sea surface temperature.
What sets this course apart: a programme designed for people who have never programmed; exercises built on real open marine data from CTD, buoys, Argo and satellites; open tools such as Jupyter, NumPy, Pandas, Xarray and Cartopy; good practice for organised, reproducible scientific work; and a practical case in which you carry out a complete analysis of oceanographic data.
Programme highlights
- From scratch: designed for people who have never programmed.
- Real marine data: exercises with CTD, buoys, Argo and satellite products.
- Open tools: Jupyter, NumPy, Pandas, Xarray and Cartopy.
- Scientific formats: working confidently with NetCDF and CSV.
- Reproducibility: good practice for organised scientific work.
- Practical case: a complete analysis of oceanographic data.
Syllabus of the Python for Marine Science Course
5 modules. Select a module to see its content.
Python fundamentals
- 1.1. Installation and the Jupyter environment
- 1.2. Variables and data types
- 1.3. Lists, dictionaries and tuples
- 1.4. Conditionals and loops
- 1.5. Functions and modules
Scientific computing with NumPy and Pandas
- 2.1. Arrays and vectorised operations
- 2.2. Reading CSV and Excel files
- 2.3. Filtering and grouping data
- 2.4. Time series with Pandas
- 2.5. Cleaning missing data
Multidimensional oceanographic data
- 3.1. The NetCDF format
- 3.2. Introduction to Xarray
- 3.3. Selection by coordinates
- 3.4. Averages, climatologies and anomalies
- 3.5. Access to remote data
Oceanographic visualisation
- 4.1. Plots with Matplotlib
- 4.2. Vertical profiles and T-S diagrams
- 4.3. Maps with Cartopy
- 4.4. Colour palettes for the ocean
- 4.5. Publication-ready figures
Applied analysis of marine data
- 5.1. CTD profiles and Argo floats
- 5.2. Buoy and tide gauge series
- 5.3. Satellite sea surface temperature
- 5.4. Organising a reproducible project
- 5.5. Practical case: data analysis for a marine area
Duration and format of the Python for Marine Science Course
It is 300 hours. Tell us how many you can study each week and we will tell you when you will really finish.
This is the pace at which most students finish. It fits well with the instalment plan.
Academic leadership and faculty
The Navalis teaching team: working professionals who teach and supervise the programmes.
Dr. Marina AlcoverAcademic Director and Head of Quality Assurance
Eng. Diego CifuentesSenior Lecturer in Naval Welding and Non-Destructive Testing; Head of QA/QC for Welded Joints
Capt. Javier Abaroa (MCA)Senior Lecturer in Ship Handling, Electronic Navigation (ECDIS/Radar/ARPA) and GMDSS; STCW Compliance and Bridge Resource Management Coordinator
Dr. Pau FerrerSenior Lecturer in Naval Architecture and Simulation; Director of the Hydrodynamics and CFD Laboratory
Dr. Nuria LlobregatSenior Lecturer in Marine Meteorology, SAR and Operational Safety; Navigation Risk Management Coordinator
Eng. Javier BañulsSenior Lecturer in Electrical Engineering, Automation and ETO Engineering; Electronic Integration and Engine Alarms Coordinator
Eng. Sofía MarquinaSenior Lecturer in Materials, Composites and Corrosion Protection; Coordinator of the Advanced Paints and Coatings Line
Eng. Tomás RieraSenior Lecturer in Propulsion, Alternative Energy and Hybrid Systems; Energy Performance and Vibration CoordinatorObjectives of the Python for Marine Science Course
Career opportunities after the Python for Marine Science Course
Questions about the Python for Marine Science Course
No. The course starts from scratch and progresses gradually.
Only free software: Python, Jupyter and the scientific libraries, or a cloud-based environment.
Open data from CTD casts, buoys, Argo floats and satellite products.
Yes. The techniques in the course apply directly to data analysis in scientific projects.
Analysing and plotting the oceanographic data of a marine area of your choice.
Fully online, through a virtual campus available 24/7, with live sessions that are recorded and tutorials with the teaching staff.
The course comprises 300 hours of study across 5 modules of about 60 hours each and ends with an applied practical case. You can progress at your own pace within the schedule set when you enrol.
More programmes in Climate and oceanography
Admission process
No waiting for a call back. If your documents are in order, you can enrol in the same session.
- Profile: aimed at students and graduates in marine or environmental sciences, laboratory and field technicians who handle oceanographic data, researchers still working with spreadsheets, environmental consultancy professionals and teachers who want to bring Python into their classes; studies in marine sciences, biology, environmental sciences, geography, physics or related fields, or professional experience with marine data, are recommended.
- Language: sufficient command of English to follow the classes and the technical documentation.
- Technical resources: a computer with a stable internet connection, an up-to-date browser and a camera for live sessions and project presentations.
- Admission: online application, review of your profile and a short interview with the academic team.
- 01ApplicationYour details, background and documents.
- 02Instant reviewWe check that everything is complete and in order.
- 03EnrolmentChoose full payment or instalments and reserve your place.
Admission is provisional until the committee validates the documents provided. If you do not meet the requirements, the full amount is refunded.
Ask us before you enrol
Leave your details and admissions will write to you to answer any questions. If you are already sure, you can apply and pay in the same session.