Doing Computational Social Science

Doing Computational Social Science book
My book Doing Computational Social Science was published by Sage at the start of 2022 and is currently available for purchase.

Computational approaches offer exciting opportunities for us to do social science differently. This beginner’s guide discusses a range of computational methods and how to use them to study the problems and questions you want to research.

It assumes no knowledge of programming, offering step-by-step guidance for coding in Python and drawing on examples of real data analysis to demonstrate how you can apply each approach in any discipline.

The book also considers important principles of social scientific computing, including transparency, accountability and reproducibility; understands the realities of completing research projects and offers advice for dealing with issues such as messy or incomplete data and systematic biases; and empowers you to learn at your own pace, with online resources including screencast tutorials and datasets that enable you to practice your skills and get up to speed.

For anyone who wants to use computational methods to conduct a social science research project, this book equips you with the skills, good habits and best working practices to do rigorous, high quality work.


Part I: Foundations
Chapter 1: Setting up your open source scientific computing environment   
Chapter 2: Python programming: The basics   
Chapter 3: Python programming: Data structures, functions and files   
Chapter 4: Collecting data from Application Programming Interfaces (APIs)   
Chapter 5: Collecting data from the web: Scraping   
Chapter 6: Processing structured data   
Chapter 7: Visualisation and exploratory data analysis   
Chapter 8: Latent factors and components  

Part II: Fundamentals of text analysis
Chapter 9: Processing natural language data   
Chapter 10: Iterative text analysis   
Chapter 11: Exploratory text analysis   
Chapter 12: Text similarity and latent semantic space  

Part III: Fundamentals of network analysis
Chapter 13: Social networks and relational thinking   
Chapter 14: Connection and clustering in social networks   
Chapter 15: Influence, inequality and power in social networks   
Chapter 16: Going viral: Modelling the epidemic spread of simple contagions   
Chapter 17: Not so fast: Modelling the diffusion of complex contagions  

Part IV: Research ethics and machine learning
Chapter 18: Research ethics, politics and practices   
Chapter 19: Machine learning: Symbolic and connectionist   
Chapter 20: Supervised learning with regression and cross-validation   
Chapter 21: Supervised learning with tree-based models   
Chapter 22: Neural networks and deep learning   
Chapter 23: Developing neural network models with Keras and Tensorflow  

Part V: Bayesian machine learning and probabilistic programming
Chapter 24: Statistical machine learning and generative models   
Chapter 25: Probability: A primer   
Chapter 26: Approximate posterior inference with stochastic sampling and MCMC  

Part VI: Bayesian data analysis and latent variable modelling with relational and text data
Chapter 27: Bayesian regression models with probabilistic programming   
Chapter 28: Bayesian hierarchical regression modelling   
Chapter 29: Variational Bayes and the craft of generative topic modelling   
Chapter 30: Generative network analysis with Bayesian stochastic blockmodels  

Part VII: Embeddings, transformer models and named entity recognition
Chapter 31: Can we model meaning?: Contextual representation and neural word embeddings   
Chapter 32: Named entity recognition, transfer learning and transformer models

Supplementary Resources

You can find the supplementary materials for the book on the Sage website and on Github.