/PythonNumericalDemos

Well-documented Python demonstrations for spatial data analytics, geostatistical and machine learning to support my courses.

Primary LanguageJupyter NotebookMIT LicenseMIT

PythonNumericalDemos: Educational Data Science Python Demonstrations Repository (0.0.1)

Well documented Python workflows to help you over the intellectual hurdles of data science!

To support my students in my Data Analytics and Geostatistics, Spatial Data Analytics and Machine Learning courses and anyone else learning data analytics and machine learning, I have developed a set of well-documented Python workflows. When students struggle with a concept I make and share a new well-documented so they can try out and repeat all the examples from my lectures to learn immediately how to apply the models or theoretical concepts!

Michael Pyrcz, Professor, The University of Texas at Austin, Data Analytics, Geostatistics and Machine Learning


Cite As:

Pyrcz, Michael J. (2021). PythonNumericalDemos: Educational Data Science Python Demonstrations Repository (0.0.1). Zenodo. https://doi.org/10.5281/zenodo.5564966

DOI


Setup

A minimum environment includes:

  • Python 3.7.10 - due to the depdendency of GeostatsPy on the Numba package for code acceleration
  • MatPlotLib - plotting
  • NumPy - gridded data and array math
  • Pandas - tabulated data
  • SciPy - statistics module
  • ipywidgets - for plot interactivity
  • GeostatsPy - geostatistical algorithms and functions (Pyrcz et al., 2021)

The required datasets are available in the GeoDataSets repository and linked in the workflows.

Repository Summary

I use these demonstrations for:

  1. in-lecture walkthroughs
  2. hands-on experiential learning with specific tasks suggested in the accompanying lecture notes
  3. example workflows to support my students

Other resources that you might be interested in include:

While I have more than 20 years experience coding in FORTRAN, C++ and VBA, I just started with Python a couple of years ago. I love it. I code less and get more done! I recommend Python to any engineers or scientists. Here's some reasons to learn to code:

  1. Transparency – no compiler accepts hand waiving! Coding forces your logic to be uncovered for any other scientist or engineer to review.

  2. Reproducibility – run it, get an answer, hand it over, run it, get the same answer. This is a main principle of the scientific method.

  3. Quantification – programs need numbers. Feed the program and discover new ways to look at the world.

  4. Open-source – leverage a world of brilliance. Check out packages, snippets and be amazed with what great minds have freely shared.

  5. Break Down Barriers – don’t throw it over the fence. Sit at the table with the developers and share more of your subject matter expertise for a better product.

  6. Deployment – share it with others and multiply the impact. Performance metrics or altruism, your good work benefits many others.

  7. Efficiency – minimize the boring parts of the job. Build a suite of scripts for automation of common tasks and spend more time doing science and engineering!

  8. Always Time to Do it Again! – how many times did you only do it once? It probably takes 2-4 times as long to script and automate a workflow. Usually worth it.

  9. Be Like Us – it will change you. Users feel limited, programmers truly harness the power of their applications and hardware.

Alright, that is enough of my ranting. Especially, since I haven't even introduced myself yet!

The Repository Author:

Michael Pyrcz, Professor, The University of Texas at Austin

Novel Data Analytics, Geostatistics and Machine Learning Subsurface Solutions

With over 17 years of experience in subsurface consulting, research and development, Michael has returned to academia driven by his passion for teaching and enthusiasm for enhancing engineers' and geoscientists' impact in subsurface resource development.

For more about Michael check out these links:

Want to Work Together?

I hope this content is helpful to those that want to learn more about subsurface modeling, data analytics and machine learning. Students and working professionals are welcome to participate.

  • Want to invite me to visit your company for training, mentoring, project review, workflow design and / or consulting? I'd be happy to drop by and work with you!

  • Interested in partnering, supporting my graduate student research or my Subsurface Data Analytics and Machine Learning consortium (co-PIs including Profs. Foster, Torres-Verdin and van Oort)? My research combines data analytics, stochastic modeling and machine learning theory with practice to develop novel methods and workflows to add value. We are solving challenging subsurface problems!

  • I can be reached at mpyrcz@austin.utexas.edu.

I'm always happy to discuss,

Michael

Michael Pyrcz, Ph.D., P.Eng. Professor, Cockrell School of Engineering and The Jackson School of Geosciences, The University of Texas at Austin

More Resources Available at: Twitter | GitHub | Website | GoogleScholar | Book | YouTube | LinkedIn