School of Engineering and Technology, (SET)

This course introduces the use of Python programming for exploring and modelling data in the field of environmental sciences. It drives the student from his very first steps with Python, like setting up the environment and starting writing the first lines of codes, to proficient use in visualizing, analyzing, and modelling data in the field of environmental sciences. 

This course caters to individuals with diverse scientific backgrounds, particularly those at the master's or Ph.D. level, aspiring to elevate their programming skills for precision-driven environmental sciences applications. Early-career professionals and seasoned researchers seeking to integrate Python programming into nuanced environmental problem-solving will find this course instrumental.

Upon successful completion, participants will possess a robust proficiency in Python programming, equipped to apply it methodically in the realm of environmental sciences research and intricate problem-solving.

While no prior programming experience is mandatory, a foundational understanding of environmental sciences concepts is recommended.

I. Python for environmental scientist: A Kick-off

1. Setting up Python environment

2. Python essentials for environmental scientists

3. Introduction to solving environmental problems using python

II. Describing Environmental Data

1. Graphical Visualization of a Geological Data Set

a. Statistical Description of a Data Set: Key Concepts

b. Visualizing Univariate Sample Distributions

c. Preparing Publication-Ready Binary Diagrams

d. Visualization of Multivariate Data: A First Attempt

2. Descriptive Statistics: Univariate Analysis

a. Basics of Descriptive Statistics 

b. Location 

c. Dispersion or Scale.

d. Skewness

e. Descriptive Statistics in Pandas

f. BoxPlots

3. Descriptive Statistics: Bivariate Analysis

a. Covariance and Correlation 

b. Simple Linear Regression

c. Polynomial Regression

d. Nonlinear Regression 

III. Machine Learning.

1. Introduction to Machine Learning

None.

Lecture notes, tutorial and other ancillary learning resources will be provided.

Maurizio Petrelli:

Introduction to Python in Earth Science Data Analysis, From Descriptive Statistics to 

Machine Learning, Springer, 2021. 

Available online within AIT network:

https://link.springer.com/book/10.1007/978-3-030-78055-5

Maurizio Petrelli:

Machine Learning for Earth Sciences, Using Python to Solve Geological Problems,

Springer, 2023. 

Available online within AIT network:

https://link.springer.com/book/10.1007/978-3-031-35114-3

Others: 

Books python code repository

https://github.com/petrelli-m/python_earth_science_book

https://github.com/petrelli-m/machine_learning_earth_sciences

Lecture: 15 Hrs.

Laboratory: none

Other self-studies = 50 Hrs.

1. Lectures: Students will have a text book as reference. They will receive lecture notes and the weekly lecture schedule at the beginning of the course. They will be requested to read the lecture notes before coming to the class.

2. Tutorials and Discussion Sessions: Students will have a textbook with each chapter containing explicative examples of code, and each script commented in detail.

3. Mini project: Students will carry out mini-projects to show their ability to apply environmental data analysis using python in practice.

LO  Assessment method  % marks
All  Individual mini-project  100

In the examination, an 

i. "A" will be awarded if a student demonstrates an excellent and insightful understanding of key concepts, advanced data analysis, and programming techniques. The student must also master the knowledge learned in the class to obtain and analyze information in an original and sophisticated manner.

ii. "B+" will be awarded if a student exhibits a very good understanding of key concepts, advanced data analysis, and programming techniques. Additionally, the student should elaborate on the knowledge learned in the class.

iii. "B" will be awarded if a student shows a good understanding of all given topics and is able to implement basic programming and environmental data analysis.

iv. "C+" will be given if a student meets below-average expectations but may demonstrate some understanding of both basic knowledge and mastery of basic programming and environmental data analysis.

v. "C" will be given if a student meets fairly below-average expectations and is deficient in both knowledge and mastery of basic programming and environmental data analysis.

vi. "D" will be awarded if a student does not meet basic expectations and is highly deficient in both basic programming and environmental data analysis.

vii. "F" will be awarded if the student shows unsatisfactory and very limited comprehension of basic programming and environmental data analysis.

SECTION NAME
A Dr. Christopher D. Elvidge