David Garcia, University of Konstanz, Winter Semester 2026/27
Welcome to the online materials for Introduction to Social Data Science, a bachelor course at the University of Konstanz based on the Social Data Science course at ETH Zurich.
Social Data Science is an emerging field that studies human behavior and social interaction through digital traces. The revolution in measurement brought by our digital society gives us data at global scales, very high frequencies, and unprecedented levels of depth and resolution.
This course focuses both on the fundamentals and applications of Data Science in the Social Sciences, including technologies for data retrieval. Students of Social Data Science learn how to plan, execute, and interpret complete Data Science projects to address questions about human behavior. After this course, students will know how to gather data from social media, search trends, and other online and offline sources, how to process and store that data, and how to combine, analyze, and visualize data to address specific questions. The course makes a special emphasis in interpretation and critique of Data Science in the Social Sciences, aiming at an interdisciplinary approach that can inform students from various disciplines.
I am the Professor for Social and Behavioral Data Science at the University of Konstanz. You can find more about my research group here: http://dgarcia.eu. My background is Computer Science but I worked my whole career with psychologists, sociologists and physicists to learn new ways to understand human behavior. I got my PhD from ETH Zurich in 2012 and a habilitation in 2018, starting to work as full professor TU Graz in 2020 and then at the University of Konstanz in 2022. To learn more about my research, check my publications.
Homework after Session 1: install R, RStudio and the course packages before Session 2, following the setup instructions. Then knit the setup check to make sure everything works.
If your installation does not work, you can run all course materials in your browser with Posit Cloud: create a New Project from Git Repo with the address https://github.com/dgarcia-eu/SDS_Intro_Konstanz (see the Posit Cloud fallback).
Setup files: [Setup instructions], [Setup zipped folder]
The course is organized in weekly sessions of 90 minutes. Some sessions are mostly a lecture with slides, others are practical sessions in which we work through an R Markdown notebook together. There is an R crash course and five exercises for you to apply what you learned, about one every two weeks. Each exercise starts at the end of a practical session, you continue it at home, and we discuss the results together in a later session. The exercises are not graded but develop the necessary skills to do the final project, which is the basis for the final grade. In exercises, you collect your own data to answer Social Data Science questions. You can submit your solutions to exercises before we discuss them to get extra points.
Session 1: Introduction to Social Data Science – 19.10.2026
1.1. Introduction to Social Data Science
1.2. The Parable of Google Flu Trends
1.3. Measuring Temporal Orientation with Google Trends
1.4. Course logistics
[Slides]
Session 2: R crash course – 26.10.2026
[Notebook] – [Tutorial files]
Exercise 0: BMI and daily steps – [Exercise materials zip]
Session 3: Retrieving data: World Development Indicators and Google Trends – 02.11.2026
3.1. Accessing the World Development Indicators from R
3.2. Google Trends data in R
3.3. Correlation and Linear Regression
[Slides] – [Notebook] – [Tutorial files]
Exercise 1: Google Trends: Do richer countries look more to the future? – [Exercise materials zip]
Session 4: Social dynamics – 09.11.2026
4.1. Social Impact Theory
4.2. The Simmel Effect
4.3. Data Science of Baby Name Data
[Slides]
Session 5: Data wrangling and bootstrapping – 16.11.2026
5.1. Data wrangling with dplyr
5.2. Bootstrapping
[Slides] – [Notebook] – [Tutorial files]
Session 6: APIs and Wrappers – 23.11.2026
6.1. Accessing APIs
6.2. Wrappers: Bluesky as an example
6.3. Discussion of Exercise 1
[Notebook] – [Tutorial files]
Exercise 2: Is there division of social impact on Bluesky? – [Exercise materials zip]
30.11.2026: No class
Session 7: Sentiment analysis – 7.12.2026
7.1. Measuring Emotions
7.2. Unsupervised Sentiment Analysis
7.3. Emotions in pagers after 9/11
[Slides]
Session 8: Evaluating sentiment analysis – 14.12.2026
8.1. Supervised Sentiment Analysis
8.2. Running Sentiment Analysis in R
[Slides] – [Notebook] – [Tutorial files]
Exercise 3: How well can we measure sentiment in text? – [Exercise materials zip]
Session 9: Social network basics – 21.12.2026
9.1. Introduction to Social Networks
9.2. The Friendship Paradox
9.3. Centrality in Social Networks
9.4. Discussion of Exercise 2
[Slides]
Session 10: Network data in R – 11.01.2027
10.1. Handling network data in R
10.2. Reading Twitter network data from JSON
10.3 Discussion of Exercise 3
[Notebook] – [Tutorial files]
Exercise 4: The retweet network of Swiss politicians – [Exercise materials zip]
Session 11: Social network structures – 18.01.2027
11.1. Structural Holes and Communities
11.2. Permutation Tests
11.3. Assortativity
[Slides] – [Notebook] – [Tutorial files]
Session 12: Network analysis in R – 25.01.2027
12.1. Network analysis in R
12.2. Discussion of Exercise 4
[Notebook] – [Tutorial files]
Session 13: Recap, projects, Q&A – 1.02.2027
The course grade is based on two parts:
The online presentation has only a pass/fail grade and it is necessary to pass it to pass the course. It takes place after the report submission to allow me to consider the submission in the Q&A. The final course grade is the numeric grade of the report.
You can receive input on project ideas and plans during the lectures and in consultations you can book over email. You can also submit a project plan as explained below to get better structured input. Do ask for input soon. There will be a window for consultations that will close two weeks before the report deadline. You can read more about the projects in this guide.
Additionally, you can submit your solutions to exercises 1-4 to achieve bonus points. If you send two or three solutions that pass, you will get a bonus of 0.3 in your grade. If you submit all four and pass, you will get a bonus 0.6 in your grade. The deadline for the submission of exercise solutions for bonus points is the day before the exercise is discussed in class.
These materials are licensed under CC BY-SA 4.0