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”


You don't have anything in your basket.

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

Member rate £492.50
Non-Member rate £985.00

Save £45 Loyalty discount applied automatically*
Save 5% on each additional course booked

*If you attended our Methods School in July/August 2023 or February 2024.

Course Dates and Times

Date: Monday 29 July – Friday 2 August 2024
Time: 09:00 – 12:30 CEST*
*including a 30 minute break

Orsolya Vasarhelyi

Corvinus University of Budapest

This course will provide you with 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

3 ECTS credits awarded for engaging fully in class activities.
1 additional ECTS credit awarded for completing a post-course assignment.

Instructor Bio

Orsolya Vasarhelyi is an assistant professor at the Center for Collective Learning, and at the Institute of Data Analytics and Information Systems at Corvinus University in Budapest, Hungary.

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

You will 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. You will 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. During this session, you will 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 3 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 will conduct live Q&A sessions and offer designated office hours for one-to-one consultations.

Prerequisite Knowledge

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.

Learning commitment

As a participant in this course, you will engage in a variety of learning activities designed to deepen your understanding and mastery of the subject matter. While the cornerstone of your learning experience will be the daily live teaching sessions, which total three hours each day across the five days of the course, your learning commitment extends beyond these sessions.

Upon payment and registration for the course, you will gain access to our Learning Management System (LMS) approximately two weeks before the course start date. Here, you will have access to course materials such as pre-course readings. The time commitment required to familiarise yourself with the content and complete any pre-course tasks is estimated to be approximately 20 hours per week leading up to the start date.

During the course week, you are expected to dedicate approximately two-three hours per day to prepare and work on assignments.

Each course offers the opportunity to be awarded three ECTS credits. Should you wish to earn a 4th credit, you will need to complete a post-course assignment, which will involve approximately 25 hours of work.

This comprehensive approach ensures that you not only attend the live sessions but also engage deeply with the course material, participate actively, and complete assessments to solidify your learning.


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.