---
title: US Lynchings
author: Rob Wiederstein
date: '2021-06-05'
slug: us-lynchings
categories:
- R
tags: []
layout: layouts/post/single
draft: no
bibliography:
- packages.bib
- ../blog.bib
csl: ../ieee-with-url.csl
link-citations: yes
nocite: |
@R-base, @R-blogdown, @R-tidyverse
header:
image: feature.jpg
alt: Senator Ellender celebrates the blocking of the anti-lynching bill in 1938
caption: Louisiana Senator Allen J. Ellender celebrates the defeat of the Anti-lynching bill in 1938. Photo courtesy of PICRYL. No anti-lynching bill has passed both houses as of March, 2021.
repo: https://raw.githubusercontent.com/RobWiederstein/purple-bananas/main/content/post/2021-06-05-us-lynchings/index.Rmd
summary: 4134 people were killed outside of the judicial process in the United States between 1882 and 1936. Most of the victims were black males living in former slave states of the deep South and were killed by lynching. However, lynchings were not unique to the South and occurred in other places as well.
---
```{r load-packages, include = F}
## Load frequently used packages for blog posts
packages <- c(
'devtools', #for session info
'ggthemes', #for plots
'blogdown',
'treemap',
'leaflet',
'widgetframe',
'htmlwidgets'
)
lapply(packages, function(x) {
if (!requireNamespace(x)) install.packages(x)
library(x, character.only = TRUE)
})
```
```{r set-chunk-options, include = F}
## Do not break chunk line
## Do not use spaces or periods "." or underscores "_"
## set options for knitr
knitr::opts_chunk$set(
comment = '',
fig.width = 6,
fig.asp = .8,
fig.align="center",
message=F,
error=F,
warning=F,
tidy=T,
comment='',
cache=T,
dev='svg',
echo=F
)
```
```{r set-ggplot-theme-defaults, include = F}
#from ggthemes
library(ggplot2); theme_set(ggthemes::theme_fivethirtyeight())
```
```{r define-color-palette, include = F, eval = T}
# color blind friendly palette from http://www.cookbook-r.com/Graphs/Colors_(ggplot2)/
cbPalette <- c("#E69F00", "#56B4E9", "#009E73", "#F0E442", "#0072B2", "#D55E00", "#CC79A7", "#000000")
```
```{r write-package-bib, echo = F}
# write packages used to bib in current directory
knitr::write_bib(.packages(), "./packages.bib")
```
```{r load-dataset}
input <- "~/Dropbox/public/datasets/2021-06-05-us_lynchings.csv"
df.0 <- data.table::fread(input = input)
```
# [Overview](#overview)
4134 people were killed outside of the judicial process in the United States between 1882 and 1936. Most of the victims were black males living in former slave states of the deep South and were killed by lynching. However, lynchings were not unique to the South and occurred in other places as well.
```{r leaflet-map-lynchings, fig.height=4, fig.cap="After geocoding, 3984 lynchings remained. Locations were plotted to the center of the declared county."}
library(leaflet)
#import
input <- "https://dl.dropbox.com/s/hj75ux1ndz1w5h1/2021-06-06-us-lynchings-geocode.csv?dl=0"
df.m <- data.table::fread(input = input, check.names = T)
#variable names
colnames(df.m) <- tolower(colnames(df.m))
my.cols <- c("fips", "state", "county", "lat", "lon", "date",
"victim", "race", "gender")
df.m1 <-
df.m %>%
select(all_of(my.cols))
df.m1$lat <- jitter(df.m1$lat, factor = .0001)
df.m1$lon <- jitter(df.m1$lon, factor = .0001)
m <- leaflet(df.m1) %>%
addTiles() %>%
setView(lng = -84.32,
lat = 37.52,
zoom = 10
) %>%
# set boundaries for map
fitBounds(lng1 = max(df.m1$lon),
lat1 = min(df.m1$lat),
lng2 = min(df.m1$lon),
lat2 = max(df.m1$lat)
) %>%
addCircleMarkers(lng = ~lon,
lat = ~lat,
radius = 3,
popup = paste("Date: ", df.m1$date, "
",
"County: ", df.m1$county, "
",
"Victim: ", df.m1$victim, "
",
"Race: ", df.m1$race, "
",
"Gender: ", df.m1$gender),
clusterOptions = markerClusterOptions()
)
frameWidget(m, height = 400)
```
# [Background](#background)
The original lynching data was collected starting in the 1880s and ending through the 1910s by the Chicago Tribune, Tuskegee University, and the NAACP. Two sociologists, Stewart Tolnay and E.M. Beck, combined the original data sources into a single dataset. It was the basis for their book, "A festival of violence: an analysis of Southern lynchings, 1882-1930," published in 1995.
They document the extrajudicial killings of 2800+ victims in ten Southern states, most of them black and most of them men. The original ten states were Alabama, Arkansas, Florida, Georgia, Kentucky, Louisiana, Mississippi, North Carolina and South Carolina. Their findings include that "lynching responded to fluctuations in the price of cotton, decreasing in frequency when prices rose and increasing when they fell."[@tolnayFestivalViolenceAnalysis1995] The authors' data can be found at [Project HAL: Historical American Lynching
Data Collection Project](http://people.uncw.edu/hinese/HAL/HAL%20Web%20Page.htm). For purposes of this post, the original dataset will be referred to as the "Tolnay dataset".
In 2019, sociologists Charles Seguin and David Rigby extended the original data by expanding the search for lynchings to the 38 states outside of the South. In their article, "National Crimes: A New National Data Set of Lynchings in the United States, 1883 to 1941," Seguin and Rigby discovered an additional 1,328 victims.[@seguinNationalCrimesNew2019] The Seguin "data include every lynching victim [verified in local newspapers] . . . from 1883 to 1941 in the 38 contiguous U.S. states not included in the original Tolnay-Beck data." [@seguinNationalCrimesNew2019] For purposes of this post, this expanded dataset will be referred to as the "Seguin dataset".
Both Tolnay and Seguin used the same definition for lynching as "(1) an extrajudicial killing, (2) motivated or justified by reference to “justice” or tradition, and (3) committed by three or more people."
"When combined with the new Tolnay-Beck data, we record 4,467 total victims of lynching from 1883 to 1941. Of these victims, 4,027 were men, 99 were women, and 341 were unknown gender (although likely male); 3,265 were black, 1,082 were white,671 were Mexican or of Mexican descent, 38 were American Indian, 10 were Chinese, and 1 was Japanese."[@seguinNationalCrimesNew2019]
# [Data and model](#data)
The Tolnay dataset was downloaded from [Project HAL](http://people.uncw.edu/hinese/HAL/HAL%20Web%20Page.htm) as an excel spreadsheet. The Seguin dataset was downloaded from [OSF](https://osf.io/kr8yc/). The two sets were combined.
# [Results](#results)
## Lynchings by Dataset
```{r plot-by-dataset, fig.asp=.66, out.width="100%"}
df.0 %>%
group_by(dataset, year = lubridate::floor_date(date, "year")) %>%
tally(name = "deaths") %>%
ggplot(aes(year, deaths, group = dataset, color = dataset)) +
geom_line() +
theme_minimal() +
labs(title = "Annual U.S. Lynchings by Dataset",
subtitle = "1882 to 1936",
caption = "Source: Project HAL & Seguin")
```
## Total Lynchings
```{r plot-total-lynchings, fig.asp = .66, out.width="100%"}
df.0 %>%
group_by(year = lubridate::floor_date(date, "year")) %>%
tally(name = "deaths") %>%
ggplot(aes(year, deaths)) +
geom_line() +
theme_minimal() +
labs(title = "Total Annual U.S. Lynchings",
subtitle = "1882 to 1936",
caption = "Source: Project HAL & Seguin"
)
```
## Lynchings by State
```{r plot-lynchings-by-state, fig.asp = 1, out.width="100%", fig.cap="Facet panels are in descending order by the total number of lynchings."}
df.3 <-
df.0 %>%
group_by(state, year = lubridate::floor_date(date, "year")) %>%
tally(name = "deaths")
df.3$state <- factor(df.3$state,
levels = c("MS", "GA", "TX", "LA", "AL", "FL", "AR", "TN", "KY", "SC",
"OK", "MO", "NC", "VA", "MT", "KS", "CO", "CA", "IN", "WV", "WY",
"NE", "IL", "MD", "NM", "IA", "OH", "WA", "AZ", "SD", "ND", "ID",
"MI", "MN", "NV", "OR", "WI", "UT", "NY", "PA", "CT", "DE", "NJ"
))
df.4 <- df.3 %>% dplyr::filter(state %in% levels(df.3$state)[1:12])
p <- ggplot(df.4, aes(year, deaths, group = state, color = state))
p <- p + geom_line()
p <- p + facet_wrap(vars(state))
p <- p + theme_minimal()
p <- p + theme(legend.position = "none")
p <- p + geom_smooth()
p <- p + labs(title = "Annual U.S. Lynchings by State",
subtitle = "1882 to 1936",
caption = "Source: Project HAL & Seguin")
p
```
## Lynching by Gender & Race
```{r treemap-demographics}
df.0 %>%
group_by(race, gender) %>%
tally() %>%
treemap(index=c("gender", "race"),
vSize="n",
type="index",
palette = cbPalette,
title = "Lynching Demographics--Gender & Race"
)
```
# [Conclusion](#conclusion)
Lynching remains a historic tragedy borne, primarily but not exclusively, by black men in the South where slavery was formerly practiced. Since 1900, the Chicago Tribune, The Tuskegee Institute and the NAACP documented these tragedies. But for their early efforts, the breadth of the horror might have never been discovered. Academics like Tolnay and Beck substantiated the early reports and it was further extended by Seguin and Rigby. The Sequin dataset showed other states like Texas, Missouri and Oklahoma were the sites of many lynchings.
Several legislative efforts to federally criminalize lynchings have been made and failed. The most recent effort occurred on February 26, 2020. The Emmett Till Antilynching Act passed the House of Representatives, by a vote of 410–4. Emmit Till was a 14-year-old who was lynched in Mississippi in 1955. Senator Rand Paul of Kentucky has held the bill from passage by unanimous consent in the Senate. Kentucky was home to 192 lynchings between 1891 and 1921.
# [Acknowledgements](#acknowledge)
This blog post was made possible thanks to:
- [NAACP](NAACPhttps://naacp.org)
- [Tuskegee University (formerly "The Tuskegee Institute")](https://www.tuskegee.edu/)
- [The Chicago Tribune](https://www.chicagotribune.com/)
- [Professor Stewart Tolnay](https://soc.washington.edu/people/stewart-tolnay)
- [Professor E.M. Beck](https://www.sociology.uga.edu/directory/people/e-m-beck)
- [Professor Charles Seguin](http://www.charlieseguin.com/)
- [Doctoral Candidate David Rigby](https://rigby.netlify.app)
# [References](#reference)