Python for Computational Social Science with Text, Networks and clever data games
Bhargav Srinivasa (~bhargavvader) |
The current paradigm of increasing data means that social scientists have increasingly taken to data oriented methods to help understand our social world. This can range from Sociology, Political Science, Economics, and Psychology to fields like History and Anthropology. The key is to identify how easily available social data (such as twitter, reddit, or scraping from a relevant website) can be related to a social question: and to use a variety of computational methods to leverage this data to shed some light on the social world.
These methods can be web scraping and organising, creating networks from online data, mining text data to uncover social worlds, and creating simple machine learning models to predict social behaviour. Luckily for us, python and the PyData ecosystem has all the tools and community to help us do this.
In this tutorial I will be showcasing 4 examples which will cover these wide variety of techniques, while all being relevant to a social science discipline - while the social sciences are an academic field, ALL of these examples can be used to develop your python experience, as well as be thought of as general purpose data science problems which will help while interviewing for such positions. I expect only basic python experience, but the tutorial will still be very useful to even experts, as it is more about the application of these methods to a wide variety of contexts which is what makes Computational Social Science what it is.
Some of the tools we will be using are pandas, numpy, networkx, spaCy, gensim, and scikit-learn.
The time based break up is:
1) 30 mins - introduction to computational social science and how data and coding has been increasingly used for social sciences research.
2) 30 mins - setup of environments for coding and starting loading of data
3) 30 mins - network analysis of social data
4) 30 mins - natural language processing of social data
5) 30 mins - machine learning for social data
Some python and data science knowledge would be useful but not necessary and topics will be covered from scratch.
This is not the final tutorial, but it will be a similar style. The workshop will have 30 minutes of introduction of social science research and 2 hours of going through the jupyter notebook and code examples.
Hello! I am a Research Fellow at the Knowledge Lab at the University of Chicago, where I also received my MA in Computational Social Science. Open source and python have been a large part of my life, and I have contributed to multiple scientific computing libraries, spoken at over 15 PyCons/PyDatas, maintain two python packages, and have written a book on doing Natural Language Processing in Python. I'm a strong believer in accessible and critical science with a clear focus on the social impacts and nature of computing and science. I love my cat, dancing to techno music, hanging out with my awesome friends and family, and cooking Indian food.