Pre Recorded
Python is one of the most widely used and highly valued programming languages in the world, and is especially widely used in data science, machine learning, and in other scientific computing applications. In order to use Python confidently and competently for these applications, it is necessary to have a solid foundation in the fundamentals of general purpose Python. This two day course provides a general introduction to the Python environment, the Python language, and general purpose programming in Python. We cover how to install and set up a Python computing environment, describing how to set virtual environments, how to use Python package installers, and overview some Python integrated development environments (IDE) and Python Jupyter notebooks. We then provide a comprehensive introduction to programming in Python, covering all the following major topics: data types and data container types, conditionals, iterations, functional programming, object oriented programming, modules, packages, and imports. Note that in this course, we will not be covering numerical and scientific programming in Python directly. That is provided in a subsequent two-day course, for which the topics covered in this course are a necessary prerequisite.
This course is aimed at anyone who is interested in learning the fundamentals of Python generally and especially for ultimately using Python for data science and scientific applications. Although these applications are not covered directly here, but are covered in a subsequent course, the fundamentals taught here are vital for master data science and scientific applications of Python.
Last Up-Dated – 21:05:2022
Duration – Approx. 15 hours
ECT’s – Equal to 1 ECT’s
Language – English
This course will be hands-on and workshop based. Throughout each day, there will be some brief introductory remarks for each new topic, introducing and explaining key concepts.
Although not strictly required, using a large monitor or preferably even a second monitor will make the learning experience better. All the sessions will be video recorded, and made available immediately on a private video hosting website. Any materials, such as slides, data sets, etc., will be shared via GitHub.
No particular knowledge of mathematics or statistics is required.
No prior experience with Python or any other programming language is required. Of course, any familiarity with any other programming will be helpful, but is not required.
Attendees of the course must use a computer with Python (version 3) installed. This can in fact be done entirely online for free using Google’s Colaboratory without needing to install any software on your own laptop or desktop. If you are new to Python, this approach is highly recommended. You will be able to immediately starting learning Python without any installation or configuration of software. This entire course can be done using this approach.
PLEASE READ – CANCELLATION POLICY
Cancellations/refunds are accepted as long as the course materials have not been accessed,.
There is a 20% cancellation fee to cover administration and possible bank fess.
If you need to discuss cancelling please contact oliverhooker@prstatistics.com.
If you are unsure about course suitability, please get in touch by email to find out more oliverhooker@prstatistics.com
Approx. 6 Hours
Topic 1: Installing and setting up Python. There are many ways to write and execute code in Python. Which to use depends on personal preference and the type of programming that is being done. Here, we will explore some of the commonly used Integrated Development Environments (IDE) for Python, which include Spyder and PyCharm. Here, we will also introduce Jupyter notebooks, which are widely used for scientific applications of Python, and are an excellent tool for doing reproducible interactive work. Also as part of this topic, we will describe how to use virtual environments and package installers such as pip and conda.
Topic 2: Data Structures. We will begin our coverage of programming with Python by introducing its different data structures.and operations on data structures This will begin with the elementary data types such as integers, floats, Booleans, and strings, and the common operations that can be applied to these data types. We will then proceed to the so-called collection data structures, which primarily include lists, dictionaries, tuples, and sets.
Topic 3: Programming I. Having introduced Python’s data types, we will now turn to how to program in Python. We will begin with iteration, such as the for and while Here, we also cover some of Python’s functional programming features, specifically list, dictionary, and set comprehensions.
Approx. 6 Hours
Topic 4: Programming II. Having covered iterations, we now turn to other major programming features in Python, specifically, conditionals, functions, and exceptions.
Topic 5: Object Oriented Programming. Python is an object oriented language and object oriented programming in Python is extensively used in anything beyond the very simplest types of programs. Moreover, compared to other languages, object oriented programming in Python is relatively easy to learn. Here, we provide a comprehensive introduction to object oriented programming in Python.
Topic 6: Modules, packages, and imports. Python is extended by hundreds of thousands of additional packages. Here, we will cover how to install and import these packages, but more importantly, we will show how to write our own modules and packages, which is remarkably easy in Python relative to some programming languages.
Works At
Senior Lecturer, Psychology Department, Nottingham Trent University, England
Personal website
Google Scholar
Mark Andrews is a Senior Lecturer in the Psychology Department at Nottingham Trent University in Nottingham, England. Mark is a graduate of the National University of Ireland and obtained an MA and PhD from Cornell University in New York. Mark’s research focuses on developing and testing Bayesian models of human cognition, with particular focus on human language processing and human memory. Mark’s research also focuses on general Bayesian data analysis, particularly as applied to data from the social and behavioural sciences. Since 2015, he and his colleague Professor Thom Baguley have been funded by the UK’s ESRC funding body to provide intensive workshops on Bayesian data analysis for researchers in the social sciences.