Find us on GitHub

A Data Carpentry Workshop

University of Manchester

Dec 14-15, 2017

9:30 am - 5:00 pm

Instructors: Peter Smyth

Helpers: FIXME

General Information

Data Carpentry workshops are for any researcher who has data they want to analyze, and no prior computational experience is required. This hands-on workshop teaches basic concepts, skills and tools for working more effectively with data.

This is the first of two pilot workshop for the Social Sciences curriculum currently under development at the Univeersity of Manchester. In this workshop we will teach the Python language materials and in the second workshop we will cover the R langauge materials. Spreadsheets, OpenRefine and SQL will be taught in both with the second pilot benefitting from feedback from the first.

The normal length of the workshop is two days. However this first workshop is restricted to 1.5 days. Consequently only the Python episodes marked with an '*' will be covered in class, but all of the intended materials are on the website.

We will cover Data organization in spreadsheets and OpenRefine, Introduction to Python and SQL for data management . Participants should bring their laptops and plan to participate actively. By the end of the workshop learners should be able to more effectively manage and analyze data and be able to apply the tools and approaches directly to their ongoing research.

Who: The course is aimed at graduate students and other researchers.

Where: Humanities Bridgeford St. (Building 35). Get directions with OpenStreetMap or Google Maps.

Requirements: Participants must bring a laptop with a Mac, Linux, or Windows operating sytem (not a tablet, Chromebook, etc.) that they have administrative privileges on. They should have a few specific software packages installed (listed below). They are also required to abide by Data Carpentry's Code of Conduct.

Contact: Please mail for more information.

Preliminary Schedule


Please be sure to complete these surveys before and after the workshop.

Pre-workshop Survey

Post-workshop Survey

Thursday 14th

Morning Data organization in spreadsheets and OpenRefine
Morning Data organization in spreadsheets and OpenRefine
Afternoon Introduction to Python

Friday 15th

Morning SQL for data management

We will use this Etherpad for chatting, taking notes, and sharing URLs and bits of code.


Data organization in spreadsheets

  • Creating data tables in a spreadsheet
  • Re-formatting a spreadsheet report
  • Formatting problems
  • Dates and date formatting
  • Quality control
  • Exporting data
  • Reference...


  • Introduction to OpenRefine
  • Working with OpenRefine
  • Filtering and Sorting
  • Using regular expressions
  • Examining Numbers in OpenRefine
  • Using scripts
  • Saving results
  • Other resources in OpenRefine
  • Reference...

Introduction to Python

  • *Introduction to Python
  • *Python basics
  • *Python control structures
  • *Loops and conditionals
  • Creating re-usable code
  • *Processing data from a file
  • Date and Time
  • *Processing JSON data
  • Pandas
  • Extracting row and columns
  • Aggregations and missing data
  • Joining dataframes
  • Wide and long data formats
  • *Data visualisation using Matplotlib
  • Accessing SQLite Databases
  • Reference...

SQL for data management

  • What is a Relational database
  • Using DB Browser
  • The Select statement
  • Missing data
  • Creating new columns
  • Aggregations
  • Creating tables and views
  • The SQLite command line
  • Joins
  • Using database tables in other environments
  • Reference...


To participate in a Data Carpentry workshop, you will need working copies of the described software. Please make sure to install everything (or at least to download the installers) before the start of your workshop. Participants should bring and use their own laptops to insure the proper setup of tools for an efficient workflow once you leave the workshop.

Please follow these Setup Instructions.

We maintain a list of common issues that occur during installation as a reference for instructors that may be useful on the Configuration Problems and Solutions wiki page.