Colchester, United Kingdom

Python Programming for Social Scientists

online course
when 29 July 2024 - 2 August 2024
language English
duration 1 week
credits 4 EC
fee GBP 492

Learn to conduct data collection and complex data analysis with Python programming through hands-on exercises and practical tips and apply it to your Social Science research.

Need to Know

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.

In Depth - 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.

Course leader

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.

Target group

Advanced students, researchers, and professional analysts.

Course aim

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.

Credits info

4 EC
You can earn up to four credits for attending this course.
3 ECTS credits – Attend 100% of live sessions and engage fully with class activities.
4 ECTS credits – Attend 100% of live sessions, engage fully with class activities and complete a post-class assignment.

Fee info

GBP 492: ECPR member - check whether your institution is a member here:
GBP 985: ECPR non-member


Funding applications for the 2024 ECPR Methods School summer programme are now opening for applications. Apply before mid-April 2024. For more details on funding opportunities for ECPR's other events, please visit