Home | Power BI | Excel | Python | SQL | Generative AI | Visualising Data | Analysing Data
Python Course Notes
Mastering Python takes a few weeks if you have coded in a language before, or a few months if you have never coded. The purpose of these courses is to give you a taster for Python so you can decide whether is is worth mastering the language. Having said that, even a little knowledge of Python is useful - for example, understanding snippets of Python code that an AI tool may generate to accomplish a task.
This course will argue that it is worth learning Python since:
- it is an interesting and enjoyable experience
- it is useful - Python is the de-facto language for data analysis and AI
- the ability to code, or at least to “think in code”, has become a marketable and valuable skill in the world today
Generative AI tools have changed the way we write and learn Python - they allows us not to worry so much about exact syntax and spend more time thinking at a higher level about the problem we are solving. Having said that, when learning the absolute basics, there is an argument for switching off any AI assistance, so you can master the basic syntax.
After the course, you may want to continue learning Python. Here are some suggestions
- if possible, use Python in a project at work
- otherwise find a hobby project - something that will be interesting. For example, many people are currently using Python to experiment with AI tools.
Why learn Python?
- The most popular language on the planet
- De-facto for data analysis, machine learning, generative AI
- A well-designed, consistent language – good for learning
- A versatile language – can use objected oriented and functional styles
- Python has libraries for just about everything
- Open source and free
Python Foundation Course - “Hidden” Agenda
- For people new to any computer language, concepts in coding
- Editors : Colab, or GitHub CodeSpaces, notebooks
- Working with AI “Copilots” and ChatGPT
- The universe of Python packages
Four ways to run Python
Virtually, within a browser, no local set up needed
- Google Colab (easiest to get started, free)
- GitHub CodeSpaces (slightly nicer than Colab but only 120 hours free then $4/month, need a free GitHub account
Locally installed
- VS Code (popular code editor) with Python: most flexible, best for serious coding
- Excel in Python (coming soon): some pros and cons but perfect for Excel hacks who want to sprinkle some Python into their spreadsheet
- Data and calculations: numpy
- Data analysis: e.g. pandas
- Visualisation: e.g. seaborn
- Machine learning examples: e.g. keras
- Advanced Language e.g. Functional Programming, Object Oriented Programming styles
- AI Coding Assistance (with GitHub Copilot and large language models)
Python - Other possible topics
End-to-end pandas examples – load, reshape, stack, group, sum,….
- Football match to league table (Load, reshape, calculate, summarise, ) -reference
- Time series (daily FX rates, merge USD and EUR) jason
- Titanic (clean data)
Visualisation examples (seaborn) covid infection rate
Language
- functional programming (lambdas, list comprehensions)
- building classes (and methods and properties)
- Other inc datetime, matt
AI-related
- Using Chat GPT from Python using the OpenAI API
- Image recognition using a neural net