It's Never Sunday in Philadelphia | Ben Cunningham

It's Never Sunday in Philadelphia

Written by Ben Cunningham · on January 16, 2016

It’s been a slow week. Frozen inside my apartment by another sub-zero Midwest winter, I’ve had a lot of time the past few days to rewatch some of my favorite television. Er, actually a lot of television — since Monday, I’ve marathoned through 88 (and counting) episodes of It’s Always Sunny in Philadelphia.

If you’re familiar with the series, you know that every show begins with two intertitles: the time and the day of the week (e.g. 6:00 PM on a Wednesday). Eight seasons deep and increasingly agitated by the general pointlessness of the timestamps, I had to know more. When isn’t the Paddy’s Pub crew scheming?

Already on track to hit 40 hours of Netflix by Sunday, I decided I wasn’t above scrubbing back through every episode in the series to document these opening cards. The punchcard below visualizes that data, specifically how often the show picks up at different times in the week.

Now back to watching…

library(dplyr)
library(ggplot2)
library(lubridate)
library(readr)

week_day <- c("Sunday", "Monday", "Tuesday", "Wednesday",
              "Thursday", "Friday", "Saturday")

sunny <-
  read_csv("data/always_sunny.csv", col_types = "ciiccc") %>%
  mutate(
    time = as.POSIXct(time, format = "%I:%M%p"),
    day = factor(day, rev(week_day)),
    hour = hour(time)
  )

sunny %>%
  filter(!is.na(day)) %>%
  group_by(day, hour) %>%
  summarize(n = n()) %>%
  ggplot(aes(x = hour, y = day, size = n)) +
    geom_point(color = '#444444') +
    scale_size(range = c(2, 12), name = 'Episodes') +
    labs(x = 'Time of Day', y = NULL) +
    theme_bw()

plot of chunk sunny_punchcard