To look at these lectures interactively, go to: https://mybinder.org/v2/gh/ltauxe/Python-for-Earth-Science-Students/master

- Learn to find your command line interface.
- Learn how to launch a Jupyter notebooks from the command line interface
- Learn basic notebook anatomy.
- Learn some basic UNIX commands
- Write your first python script
- Learn your first Ipython
*magic*command - Learn about the concept of
**PATH**

- Learn about variables
- Learn about operations

Learn about collections of variables: data structures

Learn about

*objects*- Learn about*methods*which allow you to do things to*objects*

- Learn more about another useful data structure,
**dictionaries**and some of their**methods** - Introduce special Python code blocks
- Learn about "for" loops, "while" loops and "if" blocks

- Learn about functions
- Discover the joys of modules

- get a first peek at the very useful Python packages called
**NumPy**and**matplotlib**

- Learn more about
**NumPy**and**matplotlib** - Learn more about
**NumPy**arrays.

- more about
**matplotlib**: adding notes and saving images - about DataFrames and Series, two new
*data structures*, that are part of the**Pandas**package - some basic filtering tricks with
**Pandas** - how to read in and save data files with
**Pandas**

- Learn how to filter data with Pandas
- Write a program to calculate the great circle distances between two known points.
- Learn how to generate formatted strings for output.

- Learn about "object oriented programming" (OOP)
- Learn how to create a "class"
- Learn more about namespaces
- Learn more about copies

- Learn about
**lambda**functions - How to use
**map( )**,**filter( )**, and**reduce( )** - Explore the joys of List, Set and dictionary comprehension

- Tricks with pandas
- Filtering
- concatentating and merging dataframes

- Learn a few more Pandas tricks
- Learn how to make more complicated plots with
**matplotlib** - Learn about the composition of the sun, solar system and Earth.
- Learn about exceptions in python

- Learn how to plot histograms and cumulative distributions
- Learn how to get lists of random numbers
- Learn about the topography of the Earth (hypsometric curve)

- Learn some basic statisics - samples versus populations and empirical versus theorectical distributions.
- Learn to calculate
*central tendencies*,*spreads*. - Learn about
*significant figures*and more about formatting output. - Learn some useful functions in
**NumPy**and**SciPy**for simulating distributions and calculating statistics.

- Learn how to deal with bivariate data (fitting lines, curves).
- Apply line fitting to determine the age of the Universe. Cool.

- Learn how to use the
**seaborn**package to produce beautiful plots - Learn about kernel density estimates
- Learn appropriate ways of representing different types of data

NB: This lecture may not work properly in the interactive online binder environement. (it requires cartopy==0.17.0 and that is not yet available)

- start to make some basic maps using
**Cartopy**. Yippee (we love maps).

NB: This lecture may not work properly in the interactive online binder environement. (it requires cartopy==0.17.0 and that is not yet available)

- Learn about gridding and contouring with cartopy

- We will work with directional data using rose diagrams and stereonets

- Learn some useful tricks about matrix math.

- Learn how to plot great and small circles on an equal area net and map projections.

NB: This notebook will not work in the interactive online binder environement

- Learn about the concept of Graphical User Interfaces
- Learn how to make a GUI in a Jupyter notebook
- Learn how to export the GUI to a command line program

- Find out about Machine Learning
- Learn about using the scikit-learn python package for machine learning.
- Apply machine learning to Earth Science problems

- Learn about 3D plots of points and surfaces
- Show some examples with subduction zone earthquakes and isotopic systems

- Take a look at data with respect to time (time series)
- Learn a bit about time series analysis.

- Learn how to make and display animated gifs