There are a lot of resources to start with python, but for hydrologists, but here I tried, at least at the beginning, a list of readings to be quickly operative.
with a preference for the first one.
- Jupyter notebooks are a splendid way to organise calculations: you have first to lear how to use them (here a manual).
- Lectures on scientific computing with Python by J.R. Johansson cover the main topics very nicely. the first four of more general interest:
- Lecture-0 Scientific Computing with Python
- Lecture-1 Introduction to Python Programming
- Lecture-2 Numpy - multidimensional data arrays
- Lecture-3 Scipy - Library of scientific algorithms
- Lecture-4 Matplotlib - 2D and 3D plotting
- For Italians, my own introductory lectures have their place, I believe also because I used Jupyter notebooks (and Python 3) to convey previous work by Joseph Eschgfaeller (translated from Python 2.7).
- Una introduzione gentile al Python scripting (mostly a translation from JE lectures)
- Esperimenti nella lettura di un file
- Leggere un file con PANDAS (e plot dei dati con Matplotlib)
- Wanted to read a book freely available, please give then a look to Scipy Lecture Notes is a good (not necessarily quick) starting. The html version supports hyperlinks that the pdf one does not.
- Kevin Sheppard's introduction to statistical analysis with Python also a manuscript to read.
- From Wes McKinney (creator of Pandas) Python for data analysis book:
- Chapter 2: Python Language Basics, IPython, and Jupyter Notebooks
- Chapter 3: Built-in Data Structures, Functions, and Files
- Chapter 4: NumPy Basics: Arrays and Vectorized Computation
- Chapter 5: Getting Started with pandas
- Chapter 6: Data Loading, Storage, and File Formats
- Chapter 7: Data Cleaning and Preparation
- Chapter 8: Data Wrangling: Join, Combine, and Reshape
- Chapter 9: Plotting and Visualization
- Chapter 10: Data Aggregation and Group Operations
- Chapter 11: Time Series
- Chapter 12: Advanced pandas
- Chapter 13: Introduction to Modeling Libraries in Python
- Chapter 14: Data Analysis Examples
- Appendix A: Advanced NumPy
Other resources can be:
- The main NumPy and SciPy documentation.
- Python Scientific Lecture Notes a comprehensive set of tutorials on the scientific Python ecosystem.
- Software Carpentry is an open source course on basic software development skills for people with backgrounds in science, engineering, and medicine.
- Introduction to Statistics an introduction to the basic statistical concepts, combined with a complete set of application examples for the statistical data analysis with Python (by T. Haslwanter).
Specifically for hydrologists, but maybe a little obsolete, are:
- Python in Hydrology
- Python programming guide for Earth Scientists
- A hands-on introduction to using Python in the Atmospheric and Oceanic sciences
with a preference for the first one.
- Soil Physics with Python: Transport in the Soil-Plant-Atmosphere System, by Bittelli et al, is al, is a book on soil science which is quite appealing (as seen the TOC): the kindle version cost reasonably but it is in Python 2.7. Its Python programs are available here.