DACSS 585: Intro to GIS
This class serves as an introduction to Geographic Information Science (GIS). GIS is the science of spatial relationships, linking data to locations to explore relations between objects. Based in geographic thought and emerging from initial applications in natural resource management, GIS has evolved to be a universally applicable way of thinking and set of knowledge, skills, and practices. The goals of this course are to teach you basic GIS concepts through practice and theory, to enable you to make useful and meaningful contributions to various disciplines through spatial analysis. Throughout this course, you will be challenged to not only think spatially, but apply spatial analysis techniques within GIS.
DACSS 690A: Data Engineering
This course is structured into two main segments: backend engineering and data engineering. Within the backend engineering module, students acquire foundational knowledge in Python and SQL, mastering the essential skills needed to construct backend APIs using Flask. Additionally, students gain proficiency in various backend engineering aspects, including the art of crafting and interpreting tests, implementing object-oriented design principles, data modeling techniques, and effectively integrating these competencies within extensive codebases (approximately 1,000 lines of code). Transitioning to the data engineering segment, students delve into advanced topics such as SQL optimization, cloud computing, analytics databases (including Snowflake and Redshift), and the construction of data pipelines utilizing tools like Airflow, AWS services, and DBT.
DACSS 690C: Computational Social Science Methods
This course reviews different computational social science methods that are applied under different academic and professional situations. This includes different but complementary methods to format and explore data as tables, maps, graphs, and text. The course also includes basic methods for decision-making support such as optimization and social simulation. The course includes the use of version control applications, as well as promoting the practice of reproducibility and transparency. The course makes use of Python and R, including NetLogo for social simulation, Gephi for network exploration, and Git for version control. Those languages are not a pre-requisite for the course, as they will be used as templates.
DACSS 690E: Experimental Methods
From policy nudges to marketing to social mobilization, experimental research helps shape many aspects of political and social life. In the course, you will get a chance to participate in, discuss, and learn to design and analyze a wide range of experimental treatments and outcomes. In addition, the course will introduce students to computational tools and software used to design and analyze experiments. Topics include measurement and estimation of semantic priming, moderation and mediation models, conjoint design and analysis, cloud-hosting of response-time studies, mixed effects, and API access to crowd-sourcing platforms such as mTurk.
DACSS 690P: Introduction to Python for Data Science
Python has gained immense popularity as a programming language due to its ability to handle diverse types of data, powerful libraries for data analysis, robust support for tasks such as web scraping and data extraction from online sources, and its widespread use in machine learning and deep learning communities. Python is known for its readability and ease of use, making it a favorite among beginners and seasoned programmers alike. This introductory course on Python for data science will focus on the essential tools that are particularly beneficial for social data scientists and data professionals. This course will provide you with a solid foundation in Python and equip you with the necessary skills to effectively work with data using Python.
DACSS 690V: Data Visualization for Policy, Management, and Social Research
This course gives students the tools to show insights to political or scientific communities, while presenting different strategies to avoid biased interpretations. Given the overwhelming computational toolbox for displaying information, the course follows a ’keep it simple’ approach from the beginning, starting from foundational topics relating color, nature of data, and the brain; and takes students to build their own visualization tools. Emphasis is placed on complex data such as networks, geography and multivariate models. While the course uses R, it makes no emphasis on programming and more on the building of templates to produce information.
DACSS 695N: Social Networks
This is a course on network analysis. The study of networks across the sciences has exploded recently. In this course, we will cover network scientific theory as it applies to the social sciences, network data collection and management, network visualization and description; and methods for the statistical analysis of networks. The course will make extensive use of real-world applications and students will gain a thorough background in the use of network analytic software. Most of the applications discussed will be drawn from political science, but this course will be relevant to anyone interested in network analytic research.
DACSS 695SR: Survey Research Methods
This course will focus on advanced survey design and analysis topics. Topics covered include different approaches to sampling, how to construct and use survey weights, and tools for analyzing and enriching survey data, including approaches to conducting matching and multiple imputations, as well as the construction and analysis of panel data. The course will also focus on designing and analyzing survey experiments.
DACSS 756: Machine Learning For Social Scientists
This course will provide an overview of machine learning (ML) with special attention to social and behavioral analytics applications. Machine learning combines insights from artificial intelligence, probability theory, statistical inference, and information theory to help automate tasks involving pattern recognition, prediction, and classification. "Learning" is analogous to "inference" in statistics, and the modern statistical toolkit includes various machine learning methods developed to handle large (and messy) datasets. The course focuses on statistical learning and is a good second or third course in statistical methods for graduate students in the social and behavioral sciences. We will examine key supervised and unsupervised learning techniques and reflect upon appropriate and inappropriate applications of such approaches for those seeking to understand the social world. We shall also discuss the ethical issues involved in automated analysis and computer-assisted decision-making, including how they may sometimes help overcome human biases and, in others, only reinforce these tendencies.
DACSS 758: Text as Data
With the recent explosion in digitized text availability, social scientists increasingly turn to computational tools for analyzing text as data. In this course, students will first learn how to convert text to formats suitable for analysis. The course will introduce and proceed through tutorials on various natural language processing approaches to treating text as data. This will include relatively simple dictionary approaches for measurement, supervised learning approaches for document classification, vector representations, contextualized embeddings, and more.
DACSS 790C: Causal Inference
As social scientists, we not only want to identify correlations and patterns in data but also want to explain why those patterns exist. In this course, students will first learn the fundamentals of causal inference, including key concepts and the directed acyclic graph (DAG) as a broadly applicable modeling framework. From there, the course will introduce and proceed through tutorials on a variety of causal inference approaches. This will include methods such as natural and field experiments, mediation analysis, instrumental variables, difference-in-differences (DID), propensity score matching, regression discontinuity, and synthetic control.
DACSS 790N: Network Inference
This course covers various approaches for network inference and delves into the following questions: How do networks we observe emerge? Under what conditions do they change (or not)? What are the network outcomes individuals get based on their structural positions and roles? How do information and resources move from one spot to another within and beyond networks? Where does the flow stop? What are the mechanisms that lead to changes to networks? Do people form (or dissolve) social relations because of shared similarities (or outright differences) with others, or because they tend to be influenced by others already in their networks? Extending the discussion on descriptive and structural characteristics of network data in Social Network Analysis (DACSS 695N), this course introduces statistical frameworks with which network dynamics can be investigated. Recapitulating issues that make it hard to marry conventional frameworks for statistical inference with network data, such as autocorrelation and relational dependency, this course starts with mathematical models that utilize some mechanisms of network formation and continues on to statistical models. In particular, this course introduces some well-known statistical network models such as exponential random graph models (ERGMs), network regression models, latent space models, and stochastic actor-oriented model (SAOMs), as well as models that consider temporality in statistical frameworks such as temporal exponential random graph models (TERGMs) and diffusion in networks.
DACSS 790Q: Advanced Quantitative Methods
This course will build on students' previous foundations in probability, statistical inference, and linear regression. An introduction to generalized linear models (GLMs) and multilevel (mixed effects/hierarchical) models will be followed by additional advanced topics at the discretion of the instructor. These will include special cases of GLMs and multilevel models and may also consider measurement of latent variables (e.g. factor analysis, IRT).