Install the app

Install this application on your home screen for quick and easy access when you’re on the go.

Just tap Share then “Add to Home Screen”


Install the app

Install this application on your home screen for quick and easy access when you’re on the go.

Just tap Share then “Add to Home Screen”

Your subscription could not be saved. Please try again.
Your subscription to the ECPR Methods School offers and updates newsletter has been successful.

Discover ECPR's Latest Methods Course Offerings

We use Brevo as our email marketing platform. By clicking below to submit this form, you acknowledge that the information you provided will be transferred to Brevo for processing in accordance with their terms of use.

Python Programming for Social Scientists: Big Data, Web Scraping and Other Useful Programming Tricks

Course Dates and Times

Friday 26 July 13:00–15:00 and 15:30–18:00

Saturday 27 July 09:00–12:30 and 14:00–17:30


Eszter Somos

Gravity R&D

With more and more data available on the web, skills for collecting and processing them in an automated manner are becoming increasingly valuable.

This course offers an introduction to programming with Python, starting from the basics, and focusing on solving problems around data collection, processing and analysis.

We will also discuss what types of problems Python is right for, and explore how to extend your knowledge beyond this course.

By the end of this course, you should have enough programming experience to start working in any area of computation and data-intensive research.

ECTS Credits for this course

Instructor Bio

Eszter Somos is currently an associate at Gravity R&D, a company specializing in the development and maintaining of recommendation systems. She has been doing data mining  since 2015, when she switched from being a PhD student at the University of Hull researching autobiographical memory to working for startup companies.

Her main focus is exploratory data analysis, algorithm fine tuning, and conducting AB testing in online environments. She is experienced in working with data from various sectors, like online job markets, travel metasearch, webshops, and video streaming sites.

The course is ten 1.5 hour sessions of mostly hands-on programming. A computer is required during most of the lectures.

By the end of this course, you will have experience with techniques vital to effective data management:

  • The basic syntax and use of Python as a data analysis tool, including writing and executing scripts to automate common tasks, using the IPython interpreter for interactive exploration of data and code, and using the Jupyter notebook to share and collaborate.
  • Loading data from a variety of common formats such as csv, html, json
  • Manipulating data efficiently with Pandas
  • Basic web scraping
  • Use of web APIs
  • Use of special python packages such as data visualisation libraries

No programming experience is required, but you would benefit strongly from prior knowledge of Stata, R or other languages.

Each course includes pre-course assignments, including readings and pre-recorded videos, as well as daily live lectures totalling at least two hours. The instructor will conduct live Q&A sessions and offer designated office hours for one-to-one consultations.

Please check your course format before registering.

Online courses

Live classes will be held daily for two hours on a video meeting platform, allowing you to interact with both the instructor and other participants in real-time. To avoid online fatigue, the course employs a pedagogy that includes small-group work, short and focused tasks, as well as troubleshooting exercises that utilise a variety of online applications to facilitate collaboration and engagement with the course content.

In-person courses

In-person courses will consist of daily three-hour classroom sessions, featuring a range of interactive in-class activities including short lectures, peer feedback, group exercises, and presentations.


This course description may be subject to subsequent adaptations (e.g. taking into account new developments in the field, participant demands, group size, etc.). Registered participants will be informed at the time of change.

By registering for this course, you confirm that you possess the knowledge required to follow it. The instructor will not teach these prerequisite items. If in doubt, please contact us before registering.

Day Topic Details
1 Why Python? First steps with python, Ipython notebook Scraping from the Web
2 Pandas basics Data analysis and visualization
3 • Parsing scraped data, Pandas basics • Data analysis and visualization
Day Readings

Given the practical nature of the class there is no necessary reading but these online tutorials might be useful, and the blog will give you an idea why Python is particularly useful for data analysis.

Software Requirements

Please install Python 3 and Anaconda 3.6 before class, and ensure they work properly.

Hardware Requirements

Please bring your own laptop.