R Dataset / Package HistData / Cholera

On this R-data statistics page, you will find information about the Cholera data set which pertains to William Farr's Data on Cholera in London, 1849. The Cholera data set is found in the HistData R package. You can load the Cholera data set in R by issuing the following command at the console data("Cholera"). This will load the data into a variable called Cholera. If R says the Cholera data set is not found, you can try installing the package by issuing this command install.packages("HistData") and then attempt to reload the data with the library() command. If you need to download R, you can go to the R project website. You can download a CSV (comma separated values) version of the Cholera R data set. The size of this file is about 3,567 bytes.

William Farr's Data on Cholera in London, 1849


In 1852, William Farr, published a report of the Registrar-General on mortality due to cholera in England in the years 1848-1849, during which there was a large epidemic throughout the country. Farr initially believed that cholera arose from bad air ("miasma") associated with low elevation above the River Thames. John Snow (1855) later showed that the disease was principally spread by contaminated water.

This data set comes from a paper by Brigham et al. (2003) that analyses some tables from Farr's report to examine the prevalence of death from cholera in the districts of London in relation to the available predictors from Farr's table.




A data frame with 38 observations on the following 15 variables.


name of the district in London, a character vector


deaths from cholera in 1849 per 10,000 inhabitants, a numeric vector


number of deaths registered from cohlera in 1849, a numeric vector


population, in the middle of 1849, a numeric vector


elevation, in feet above the high water mark, a numeric vector


a grouping of the London districts, a factor with levels West North Central South Kent


water supply region, a factor with levels Battersea New River Kew; see Details


annual deaths from all causes, 1838-1844, a numeric vector


population density (persons per acre), a numeric vector


persons per inhabited house, a numeric vector


average annual value of house, per person (pounds), a numeric vector


poor rate precept per pound of howse value, a numeric vector


district area, a numeric vector


number of houses, a numeric vector


total house values, a numeric vector


The supply of water was classified as “Thames, between Battersea and Waterloo Bridges” (central London), “New River, Rivers Lea and Ravensbourne”, and “Thames, at Kew and Hammersmith” (western London). The factor levels use abbreviations for these.

The data frame is sorted by increasing elevation above the high water mark.


Bingham P., Verlander, N. Q., Cheal M. J. (2004). John Snow, William Farr and the 1849 outbreak of cholera that affected London: a reworking of the data highlights the importance of the water supply. Public Health, 118(6), 387-394, Table 2. (The data was kindly supplied by Neville Verlander, including additional variables not shown in their Table 2.)


Registrar-General (1852). Report on the Mortality of Cholera in England 1848-49, W. Clowes and Sons, for Her Majesty's Stationary Office. Written by William Farr. https://ia800309.us.archive.org/22/items/b24751297/b24751297.pdf The relevant tables are at pages clii – clvii.

See Also



data(Cholera)# plot cholera deaths vs. elevation
plot(cholera_drate ~ elevation, data=Cholera, 
pch=16, cex.lab=1.2, cex=1.2,
xlab="Elevation above high water mark (ft)",
ylab="Deaths from cholera in 1849 per 10,000")# Farr's mortality ~ 1/ elevation law
elev <- c(0, 10, 30, 50, 70, 90, 100, 350)
mort <- c(174, 99, 53, 34, 27, 22, 20, 6)
lines(mort ~ elev, lwd=2, col="blue")# better plots, using car::scatterplot
library(car)# show separate regression lines for each water supply
scatterplot(cholera_drate ~ elevation | water, data=Cholera, 
smooth=FALSE, pch=15:17, lwd=2, id.n=2, 
labels=sub(",.*", "", Cholera$district),
col=c("red", "darkgreen", "blue"),
legend.coords="topright", legend.title="Water supply",
xlab="Elevation above high water mark (ft)",
ylab="Deaths from cholera in 1849 per 10,000")scatterplot(cholera_drate ~ poor_rate | water, data=Cholera, 
smooth=FALSE, pch=15:17, lwd=2, id.n=2, 
labels=sub(",.*", "", Cholera$district),
col=c("red", "darkgreen", "blue"),
legend.coords="topleft", legend.title="Water supply",
xlab="Poor rate per pound of house value",
ylab="Deaths from cholera in 1849 per 10,000")
# fit a logistic regression model a la Bingham etal.
fit <- glm( cbind(cholera_deaths, popn) ~ 
water + elevation + poor_rate + annual_deaths +
pop_dens + persons_house,
data=Cholera, family=binomial)
summary(fit)# odds ratios
cbind( OR = exp(coef(fit))[-1], exp(confint(fit))[-1,] )if (require(effects)) {
eff <- allEffects(fit)

Dataset imported from https://www.r-project.org.

Attachments: csv, json

<iframe src="https://pmagunia.com/iframe/r-dataset-package-histdata-cholera.html" width="100%" height="100%" style="border:0px"></iframe>