Combining dichotomous categorical variables into one variable: An example for racial/ethnic diversity

Sometimes it is useful to group similar dichotomous variables together into a single variable. One example is when asking survey respondents to identify race/ethnicity. Given a large, heterogeneous sample, there will undoubtedly be respondents who select two, three, or more racial/ethnic categories. When using checkbox input fields, most survey data collection platforms will store each checkbox value as a distinct variable (False=0, True=1) and provide a data column for each.  This can become problematic when you want to report the summary output as mutually-exclusive data (each respondent counted only once).

For the race/ethnicity example, a respondent might click checkboxes for both ‘Black’ and ‘White’ if they identify as biracial. If you tabulate these two variables separately, this person will be counted twice. If you want mutually-exclusive respondent counts, you may want to combine all of the dichotomous variables into a single composite variable that you can then summarize. What follows is a fairly easy way to do that without losing your mind or the nuance of the original variables.

Continue reading


FitBit sleep tracking

I’ve been on the fence about replacing my broken FitBit for a couple years. What finally pushed me off that fence was the recent unlocking of intraday data for developers’ personal projects. This makes it possible for me to access my minute-by-minute activity and sleep data. What follows is a quick rundown of my initial foray into FitBit sleep tracking. Continue reading

Recently stopped drinking? Check in to Reddit.

Sat check-in

Figure 1: Network graph

This figure represents the 100 most recent threads on an alcohol support subreddit captured on the morning of Saturday 1/16/2016. The data account for 1,021 posts or comments made by 337 valid users (55 were excluded due to not having a stop-drinking date). Each node in the graph represents a post or comment. The red nodes correspond to Saturday check-in responses, where individuals pledge to not drink today. Node size corresponds to number of days since last drink (μ=382, SD=1340, Med.=30, IQR: 12-214). Continue reading

Social Network Analysis Graphs

Over winter break, I’ve been learning to mine Reddit for data that might be used to conduct social science research.  Specifically, I’m interested in the content and structure of “subreddit” communities that focus on mental and behavioral health conditions. For example, what might we be able to learn from examining the social structure and level of engagement in different types of emotional support threads?

So far, I’ve gotten the hang of retrieving data from the Python Reddit API Wrapper (PRAW). I’m now testing a few different visualization tools for social network analysis. Below are quick overviews of three options that I’ve tested so far (NodeXL, NetworkX, and Gephi). These data come from a subreddit that focuses on a particular mental health condition. The central nodes (hubs) are the subreddit moderators, and the peripheral nodes (spokes) are the last ~50 people who they responded to.  What we can see from these visualizations is that the moderators sometimes communicate with each other publicly, but their communications with non-moderators don’t tend to overlap. Continue reading