From the Amazon product page:
Embracing the whole of ancient history and literature for more than two thousand years, the three volumes of the Dictionary of Greek and Roman Biography and Mythology provide a wealth of information on every significant figure mentioned by the Greek and Roman writers in the areas of history, philosophy, mathematics, the Arts, medicine, law, geography, architecture, and more. A full account of the works as well as the lives of the Greek and Roman writers is included. Painters, sculptors, and architects are treated at considerable length and an account is given of all their works extant or of which there is any record in the ancient writers.
library(historydata)
library(tidyverse)
data("perseus_dictionary")
While somewhat imprecise and imperfect, students could make connections within the string data. Here we try and filter Roman Senators and determine their contemporary Caesar.
perseus_grep <- partial(grepl, ignore.case = TRUE)
roman_senators <- perseus_dictionary %>%
filter(grepl("rome", entry, ignore.case = TRUE) & grepl("senator", entry, ignore.case = TRUE)) %>%
mutate(emperor = case_when(
perseus_grep("Augustus", entry) ~ "Augustus",
perseus_grep("Julius", entry) ~ "Julius",
perseus_grep("Domition", entry) ~ "Domition",
perseus_grep("Nero", entry) ~ "Nero",
perseus_grep("Claudius", entry) ~ "Claudius",
perseus_grep("Pius", entry) ~ "Pius",
TRUE ~ "Other")
)
count(roman_senators, emperor, sort = TRUE)
## # A tibble: 6 x 2
## emperor n
## <chr> <int>
## 1 Other 51
## 2 Augustus 40
## 3 Claudius 17
## 4 Julius 16
## 5 Nero 12
## 6 Pius 8
You could do something similar by searching for Christian martyrs or bishops, and then identifying the contemporary ruler. You could hypothetically drill down further by searching for the manner of death, e.g. “crucified|crucifixion”.
Which Olympian appears in the most entries?
olympians <- c("Athena", "Zeus", "Hera", "Aphrodite", "Hephaestus", "Ares")
map(olympians, function(x) {
paste(x, "appears", sum(stringr::str_detect(perseus_dictionary$entry, x)), "times.")
}) %>%
flatten_chr()
## [1] "Athena appears 762 times." "Zeus appears 501 times."
## [3] "Hera appears 806 times." "Aphrodite appears 159 times."
## [5] "Hephaestus appears 75 times." "Ares appears 108 times."