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 24 – Friday 28 July 2023
Minimum 2 hours of live teaching per day
09:30 – 11:45 CEST

Orsolya Vasarhelyi

Corvinus University of Budapest

This course offers an interactive online learning environment using advanced pedagogical tools, and is specifically designed for advanced students, researchers, and professional analysts. The course is limited to a maximum of 16 participants, ensuring that the teaching team can address the unique needs of each individual.

Purpose of the course

Python is one of the most popular programming languages of data science, used in natural language processing, machine learning, and artificial intelligence. This five-day Python programming course is for social scientists who want to learn how to conduct data collection and complex data analysis with Python. 

The course will be highly interactive, with hands-on exercises and practical tips to help you start your journey in the world of Python. By the end of the course, you will have gained a strong foundation in Python programming and be able to apply your new skills to your own research projects.

To reinforce your learning, you will have after-class assignments from Monday to Thursday, where you will apply what you learned in class to real-world problems. These assignments will give you the opportunity to practice and improve your programming skills and receive feedback from the course instructors.

ECTS Credits

4 credits - Engage fully in class activities and 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!


Key topics covered

Day 1: Introduction to Python and Jupyter Notebook

Learn how to operate Jupyter Notebooks, through Google Collab. You will cover different data types in Python, loops, and conditional statements.
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 analysis I – Intro to data cleaning, analysis and nested data structures

Data cleaning is one of the most challenging parts of a data scientist's work. Learn how to extract relevant information from messy data and create data structures that are efficient to use.
Homework: Write functions – combine loops and conditions.

Day 4: Data analysis II – Data analysis with Pandas and data visualisation

A picture is worth a thousand words. Besides introducing Python's most popular data analysis toolkits (Pandas, Matplotlib, Seaborn), you will learn how to convey the findings of your analysis effectively by creating appealing and scientifically valid visualisations. 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. The focus will be on the two most popular libraries:

  • Statsmodels Great for regressions and statistical tests.
  • SciPy Performs machine learning.

You'll also learn about PCA and freely available data sets you might choose for your post-class assignment.

How the course will work online

Introductory pre-recorded videos and required readings will help you prepare for classes. The course is structured into five live Zoom sessions, each lasting at least 2 hours. The live sessions will focus on introducing new materials, followed by coding work, either alone or in groups, with support from the Instructor and Teaching Assistant. 

Homework assignments on Days 1–4 will deepen your knowledge of each topic. The Instructor and TA will check your homework, and you can book one-to-one meetings to discuss.

Basic statistical knowledge is required. No programming experience needed.

Before the course

There are around three hours of preparation for Day 1. This includes:

  • Creating a Google drive folder and sharing it with the Instructor
  • Joining the Slack group
  • Downloading Zoom
  • Watching videos
  • Downloading the files for the Day 1 class.

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.