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

Course Dates and Times

Monday 27 ꟷ Friday 31 July 2020
2 hours of live teaching per day
Courses will be either morning or afternoon to suit participants’ requirements

Orsolya Vasarhelyi

Corvinus University of Budapest

This course provides a highly interactive online teaching and learning environment, using state of the art online pedagogical tools. It is designed for a demanding audience (researchers, professional analysts, advanced students) and capped at a maximum of 16 participants so that the teaching team (the Instructor plus one highly qualified Teaching Assistant) can cater to the specific needs of each individual.

Purpose of the course

Python is the most popular programming language of data science, used in natural language processing, machine learning, and artificial intelligence. This five-day Python programming course is designed for social scientists who would like to conduct data collection, analysis and modelling with Python. 

The course focuses on hands-on exercises and practical tips to help you start your journey in the world of Python. Since this course covers a wide variety of topics, you are required to complete homework after class from Monday to Thursday.

ECTS Credits

3 credits Engage fully with class activities
4 credits Complete a post-class assignment

Instructor Bio

Orsolya is a postdoctoral fellow at the University of Warwick, Center for Interdisciplinary Research.

Her research focuses on the gender differences in career development in project-based environments.

She is a Python enthusiast!

Day 1

Introduction to Python and Jupyter Notebook
Learn how to operate Jupyter Notebooks, through Google Colab. We also cover different data types in Python, loops, and conditions.
Homework: Set of programming games

Day 2

Data collection I – Web scraping
Python is a popular language to extract data from the internet. Learn how to extract data from semi-structured websites and save the results into .xlsx and .csv files.
Homework: Scraper for a pre-defined website

Day 3

Data collection II – API
Most social media sites such as Facebook and Twitter, and Wikipedia, allow scientists to collect publicly available data from their services through Application Programming Interfaces: APIs. Learn how to use APIs, (understanding the documentation, parsing json files), and collect and save data from Twitter.
Homework: Collecting data with the Wikipedia API

Day 4

Data Analysis I – Data analysis with pandas and introduction to data visualisation
We introduce the basic data analysis toolkit of Python (Pandas, Matpotlib, Seaborn). You will work in groups to analyse a pre-defined database, then present your findings to the class.
Homework: Exploratory Data Analysis with visualisations on a pre-defined data set

Day 5

Data Analysis II – Statistical modelling
How to conduct statistical modelling in Python focusing on the two most popular libraries: Statsmodels (great for regressions, and statistical tests), Scipy (performs machine learning).

How the course will work online

Introductory pre-recorded videos and required readings (mainly documentation of the libraries) will help you prepare for classes. The first half of each class will focus on introducing new materials, then you will code, either alone or in groups, with live support from the instructor and Teaching Assistant. 

Homework assignments on Days 1–4 will deepen your knowledge of each topic. Your homework will be checked by the Instructor and TA, and you can book one-to-one meetings with the Instructor to discuss it.

Basic statistical knowledge, no programming experience needed.

Each course includes pre-course assignments, including readings and pre-recorded videos, as well as daily live lectures totalling at least three 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 three 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.