Data science tools and coding

The courses are very well organised and a highly supportive form of training - many thanks 

 

We are pleased to introduce a range of programming workshops in Python and R available during term time. If you can't attend a workshop, why not try one of our online courses that can be accessed at anytime from anywhere. Or try our Think Like a Programmer series of workshops, an engaging introduction to key programming concepts and a good foundation for anyone wanting to learn programming or work with developers. See what's on offer below.

Key concepts and best practice

Think Like a Programmer:  an introduction to the concepts behind coding (Workshop)

Prerequisites: none

These workshops will run during Michaelmas and Lent Terms only.

This series of workshops introduces you to the key terminology, concepts, structures, and good practice in code development.

Taught over 3 weeks, this course uses puzzles, Lego and other hands-on analog exercises to familiar you with programming concepts. Some sessions are flipped, and students are expected to engage with the online material via Moodle between sessions. 

By the end of each session, you will be able to:

Session one

  • Identify different types of program error
  • Detail the key processes behind agile development
  • Write a program structure using stepwise refinement

Session two

  • Use selection and repetition structures to create more efficient code
  • Distinguish between when to assign variables and constants
  • Understand different data types and their uses
  • Use operators correctly to assign values or set equivalence

Session three

  • Find values within an array data structure
  • Identify various common algorithms and write your own basic algorithm
  • Understand how to reuse code through functions
  • Have a basic understanding of object-oriented programming and its benefits 

 Check availability and book a place

Fundamentals of Programming

Python I to IV Workshop Series

This four-part series of workshops will provide you with an introduction to the fundamentals of programming in Python. You will learn foundational tools and concepts of programming in Python and build your confidence to continue learning independently.

These workshops are ideal for those with no prior experience of programming. If you are familiar with working with string and numerical variables, we recommend you start with Python II - Using If-Else Statements.

All workshops use the Spyder IDE from the Anaconda distribution and computers will be provided.

Please see below for more information on each workshop and booking links.

Python I - Working with Variables (Workshop)

Prerequisites: none

These workshops are ideal for those with no prior experience of programming!  If you are familiar with working with string and numerical variables, please book onto Python II - Using If-Else Statements.

 This is the first of a series of workshops providing an introduction to the fundamentals of programming in Python. The workshops will provide you with the foundational tools and concepts of programming in Python and will build your confidence to continue learning independently.

In this workshop you will learn the basics of working with string and numerical variables in Python. 

By the end of this session you will be able to:

  • Print strings and numbers
  • Perform arithmetic operations with numbers and numerical variables
  • Print and combine strings and string variables

This workshop uses the Spyder IDE from the Anaconda distribution and computers will be provided.

Check availability and book a place

Python II - Using If-Else Statements (Workshop)

Pre-requisites: This workshop builds upon the knowledge and skills taught in Python I. Attending the previous workshop Python I-Working with Variables is therefore highly encouraged unless you are familiar with working with string and numerical variables.

In this workshop you will learn how to convert between different types of variables, how to write conditional statements and how to apply them in an if-else statement to select a piece of code.

By the end of this session you will understand how to:

  • Get input from the user and use it to output information and perform mathematical operations
  • Convert between string, integer and float data types
  • Use conditional statements to compare and evaluate data against different criteria
  • Use if-else statements to control the flow of the program

This workshop uses the Spyder IDE from the Anaconda distribution and computers will be provided.

Check availability and book a place

Python III - Using While Loops and Lists (Workshop)

Pre-requisites: This workshop builds upon the knowledge and skills taught in Python I and Python II. Attending the previous workshop Python II- Using If-Else Statements is highly encouraged.

In this workshop you will learn how to use while loops to repeat a chunk of code and how to store and manipulate a series of values with lists.

By the end of this session you will be able to:

  • Use while loops to repeat or iterate through code until a condition is met
  • Create and index lists of information
  • Add/remove entries to/from a list
  • Use functions for basic descriptive statistics of a numerical list
  • Use methods to add, remove, index, insert or count list entries

This workshop uses the Spyder IDE from the Anaconda distribution and computers will be provided.

Check availability and book a place

Python IV - For Loops and Writing Functions (Workshop)

Pre-requisites: This workshop builds upon the knowledge and skills taught in Python I, II and III. Attending the previous workshop Python III- Using While Loops and Lists is highly encouraged.

In this workshop we focus on how to use for loops to iterate through a sequence (strings or lists). In addition, you will learn how to turn a piece of code into a function making it easy to re-use.

By the end of this session you will be able to:

  • Use for loops to iterate through a list or string
  • Write functions to create flexible and reusable code

This workshop uses the Spyder IDE from the Anaconda distribution and computers will be provided.

Check availability and book a place

DEV236x: Introduction to Python: Absolute Beginner (Self-study

Pre-requisites: none

Estimated Effort: 3 to 4 hours per week

This is an online course and you can enrol at any time.

Course Summary:

In this course that's perfect for true beginners, learn Python basics and start coding right away.

What you’ll learn:

  • Using Python in Jupyter Notebooks
  • Gathering input and manipulating input/output
  • Building reusable Functions with parameters and return values
  • Decisions and repetition using conditional statements and loops

Click here to enrol for free using your LSE credentials

DEV274x: Introduction to Python: Fundamentals (Self-study)

Pre-requisites: Recommended: Dev236x

Estimated Effort: Total 15 to 20 hours

This is an online course and you can enrol at any time.

Course Summary:

Build on what you learned in the “Introduction to Python: Absolute Beginner” course, and dig into data structure basics.

What you’ll learn:

  • Python 3 fundamentals
  • Strings and List manipulation
  • Methods to Iterate through strings, lists and ranges
  • Creating, reading and writing to files

Click here to enrol for free using your LSE credentials. https://courses.digitalskills.lse.ac.uk/courses/course-v1:Microsoft+DEV274x+MT19/about

R (Workshop)

Pre-requisites: No prior experience with R is required.

The knowledge of quantitative methods at the level of MY452 (Applied Regression Analysis) is desirable.

R is an open-source language for statistical programming. It is one of the fastest growing programming languages and in addition to its core functionality now incorporates more than 13’000 user-contributed packages. Apart from being free and open-source, R provides better tools than traditional statistical software programs for machine learning, text analysis, Bayesian modelling and  working with social media.

In this workshop we will learn basic mathematical operations in R, data manipulation, plotting and some commonly used statistical models.

Computers will be provided

Check availability and book a place

DAT210x: Introduction to C++ (Self-study)

Pre-requisites: This course consists of four modules that provide an introduction to the C++ programming language. As a result, there are no prerequisites for this course. However, it is recommended that students have some understanding of basic computer operation, the ability to install applications, and the ability work within a command line on their chosen operating system.

Estimated Effort: Total 12 to 20 hours

This is an online course and you can enrol at any time.

Course Summary:

Get a brief introduction to the C++ language from the experts at Microsoft.

What you’ll learn:

  • C++ Syntax
  • C++ Language Fundamentals
  • How to Create Functions in C++
  • Prepare yourself for intermediate and advanced C++ topics in follow-up courses taught by Microsoft

Click here to enrol for free using your LSE credentials

Java Tutorial (Self-study)

Java is a programming language that is used to develop mobile, desktop and web applications, web and application servers, games, database connection and much, much more.

The w3schools.com Java Tutorial is a free resource with comprehensive explanations and clarifying examples that will help you learn the basics of Java, including:

  • Syntax, Variables and Data Types
  • Operators, Strings and Booleans 
  • Data Types and Classes
  • Objects, Attributes and Methods

This content can be accessed by copying and pasting the following URL into your web browser: 

https://www.w3schools.com/java/default.asp

 Coding for Data Science

DAT208x: Introduction to Python for Data Science (Self-study)

Pre-requisites: Some experience in working with data from Excel, databases, or text files.

Estimated Effort: Total 12 to 24 hours

This is an online course and you can enrol at any time.

Course Summary:

The ability to analyze data with Python is critical in data science. Learn the basics, and move on to create stunning visualizations.

What you’ll learn:

  • Explore Python language fundamentals, including basic syntax, variables, and types
  • Create and manipulate regular Python lists
  • Use functions and import packages
  • Build Numpy arrays, and perform interesting calculations
  • Create and customize plots on real data
  • Supercharge your scripts with control flow, and get to know the Pandas DataFrame

Click here to enrol for free using your LSE credentials

DAT204x: Introduction to R for Data Science (Self-study)

Pre-requisites: No prior knowledge in programming or data science is required.

Estimated Effort: Total 8 to 12 hours

This is an online course and you can enrol at any time.

Course Summary:

Learn the R statistical programming language, the lingua franca of data science in this hands-on course.

What you'll learn:

  • Introductory R language fundamentals and basic syntax
  • What R is and how it’s used to perform data analysis
  • Become familiar with the major R data structures
  • Create your own visualizations using R

Click here to enrol for free using your LSE credentials

Programming for Research

Introduction to Research Programming with Python (Self-study)

This free course by UCL Research IT Services contains 16 modules, containing readings, practical experiences, and assessments.

Content:

  • What is Python and how do I use Jupyter notebooks?
  • Why write software for conducting research?
  • What are variables?
  • What are functions and how do I use them?
  • What are types and how do they differ?
  • What are containers?
  • What are Dictionaries and how do I use them?
  • What are data structures?
  • What is control and flow?
  • What are loops and why are they useful?
  • What are comprehensions and how can I use them?
  • What are libraries and how do I use them?
  • What are Classes?
  • How do I work with files?
  • How do I create and edit plots?
  • What is Numerical Python (NumPy)?

This content can be accessed via the following URL:

http://rits.github-pages.ucl.ac.uk/intro-research-prog/index.html

Introducing the UNIX shell (Self-study)

This free course by UCL Research IT Services contains 7 modules, containing readings, practical experiences, and assessments.

Contents: 

  • What is a command shell and why would I use one?
  • What is a file system and how do I use one?
  • How do I manage my files and directories?
  • How can I combine existing commands to do new things?
  • How can I find files and things in files?
  • How can I perform the same actions on many different files?
  • How can I save and re-use commands?

This content can be accessed via the following URL:

http://rits.github-pages.ucl.ac.uk/intro-unix-shell/index.html