Skip to content

sommergeo/roadDB

Repository files navigation

roadDB

This package provides an R interface to the ROCEEH Out of Africa Database (ROAD), a comprehensive resource for archaeological, anthropological, paleoenvironmental and geographic data from Africa and Eurasia dating between 3,000,000 and 20,000 years BP. The package is avaliable on CRAN and allows users to retrieve data from the online database at different levels of detail and customize search requests. Functions return data frame objects compatible with other R packages used in prehistoric and paleoenvironmental science, supporting reproducible workflows as an input provider.

The package is maintained by Christian Sommer, Zara Kanaeva, Timo Streicher and Jesper Borre Pedersen at the Research Center The Role of Culture in Early Expansions of Humans (ROCEEH) and is funded by the Heidelberg Academy of Sciences and Humanties.

☁️ Database status

This package provides online access to a regularly updated snapshot of the ROAD database. A stable internet connection is required when working with roadDB.

Current status: 🟢 Online

Current snapshot: 📅 2026-03-13

🚧 A scheduled downtime is planned for 2026-03-28.

📓 Tutorial

An introduction to the package with example workflows can be found at https://www.sommergeo.com/roadDB/tutorial.html

🔓 License

This package is licensed under the Creative Commons Attribution-ShareAlike 4.0 International (CC BY-SA 4.0). Contents retrieved from the ROAD database are published under the same license and should be cited as

Kandel, A. W., Sommer, C., Kanaeva, Z., Bolus, M., Bruch, A. A., Groth, C., Haidle, M. N., Hertler, C., Heß, J., Malina, M., Märker, M., Hochschild, V., Mosbrugger, V., Schrenk, F., & Conard, N. J. (2023). The ROCEEH Out of Africa Database (ROAD): A large-scale research database serves as an indispensable tool for human evolutionary studies. PLOS ONE, 18(8), e0289513. https://doi.org/10.1371/journal.pone.0289513

ℹ️ Using roadDB responsibly

ROAD is continuously growing and updated, and therefore a comprehensive, but not complete archive of early human prehistory. All data are curated by researchers and trained research assistants, but still may contain errors. Information is recorded closely following the interpretations of the original literature and does not necessarily reflect the views of the database curators.

Please critically evaluate results obtained via roadDB, verify them against the original literature, retrieve references using road_get_publications() and check for new publications not yet entered.

roadDB covers the most frequently used tables and columns of ROAD. For additional fields, complex SQL queries, or full database access, please register and log in to ROAD.

If you find errors, please contact info@roceeh.net.

💻 Functionality

Installation

# CRAN installation
install.packages(roadDB)

# Github installation
# Windows users are required to install Rtools: https://cran.r-project.org/bin/windows/Rtools/
install.packages("devtools")
devtools::install_github("sommergeo/roadDB")

Structure

The roadDB package has three main levels of detail (LOD) that follow a hierarchical order: (1) Localities, (2) Assemblages and (3) Dates & Publications. For example, a locality can have multiple assemblages, and each assemblage can have multiple dates associated with it.

Illustration of the three levels of the roadDB R-package from top to bottom: Locality, Assemblage and Object

Fig: Three Levels of Detail (LODs) for data retrieval.

Users can query information at different LODs using dedicated functions that follow the road_get_* naming convention. These return dataframes where each row represents an item at the requested granularity and includes attribute columns relevant to those items.

An extensive set of arguments can be applied to all road_get_* functions, allowing users to refine their queries and tailor the results to their needs.

As the ROAD database offers exceptionally rich information at the assemblage level, there are subordinate functions for querying human remains, archaeology, palaeofauna and palaeobotany.

Crosstable of compatibility between roadDB functions and related arguments

Fig: Crosstable of functions and compatible arguments. Download

Functions

# 1st level of detail:
	road_get_localities()

# 2nd level of detail:
	road_get_assemblages()
	road_get_human_remains()
	road_get_paleofauna()
	road_get_plantremains()

	## archaeology-related:
	road_get_lithic_typologies()
	road_get_lithic_raw_materials()
	road_get_organic_tools()
	road_get_symbolic_artifacts()
	road_get_features()
	road_get_miscellaneous_finds()

# 3rd level of detail:
	road_get_dates()
	road_get_publications()
	
# Helper functions:
	road_list_argument_values()
	road_summarize_archaeology()

Arguments

General arguments

The following arguments are optional and can be used with every road_get_* function to constrain queries.

Argument Type ROAD table / attribute Search type Example
continent character country_continent / continent exact "Africa"
subcontinent character country_continent / region exact "Southern Africa"
country character locality / country exact "South Africa"
locality_type character locality / type exact "rock shelter"
category character assemblage / category exact "symbolic artifacts, typology"
age_min numeric archaeological_stratigraphy / age_min exact 20000
age_max numeric archaeological_stratigraphy / age_max exact 3000000
technocomplex character archaeological_stratigraphy /technocomplex exact "ESA/ Early Acheulean"
cultural_period character archaeological_stratigraphy / cultural_period exact "Middle Stone Age"

Specific arguments

The following arguments are optional and can be used with the corresponding road_get_* function to constrain queries.

Argument Type ROAD table / attribute Search type Example(s)
tool_list character typology / tool_list contains "core 29, bladelet 136, blade 1090"
raw_material_list character raw_material / raw_material_list contains "ironstone banded"
transport_distance character raw_material / transport_distance exact "regional (6-20 km)"
organic_tool_interpretation character organic_tools / interpretation contains "harpoon", "worked", "retoucher"
symbolic_artifact_interpretation character symbolic_artifacts / interpretation contains "anthropomorphic"
feature_interpretation character feature / interpretation exact "stone construction"
miscellaneous_find_material character miscellaneous_finds / material exact "ostrich egg shell", "metal"
human_genus character publication_desc_humanremains / genus exact "Homo", "Paranthropus"
human_species character publication_desc_humanremains / species exact "sapiens rhodesiensis", "cf. sapiens"
plant_remains character plantremains / plant_remains exact "phytoliths", "plant macroremains"
plant_family character plant_taxonomy / family exact "Anarcadiaceae", "Phyllanthaceae"
plant_genus character plant_taxonomy / genus exact "Jasione", "Larix/Picea"
plant_species character plant_taxonomy / species exact "Potamogeton gramineus L."
fauna_genus character taxonomical_classification / genus exact "Lemniscomys", "Hipposideros"
fauna_species character paleofauna / species exact "cf. germanicus", "atapuerquensis"
bibtex character publication / edition / publication_source exact "TRUE", "FALSE"

Result tables

The following table provides an overview of returned attributes.

Attribute Function Type
locality_id road_get_* character
continent road_get_* character
subcontinent road_get_* character
country road_get_* character
coord_x road_get_* number
coord_y road_get_* number
locality_type road_get_* character
category road_get_* character
cultural_period road_get_* character
technocomplex road_get_* character
coordinate_source road_get_localities character
subset_age_min road_get_localities number
subset_age_max road_get_localities number
locality_age_min road_get_localities number
locality_age_max road_get_localities number
is_systematic road_get_assemblages character
geolayer road_get_* (except road_get_localities) character
archlayer road_get_* (except road_get_localities) character
human_remains road_get_assemblages boolean
archaeology road_get_assemblages boolean
plant_remains road_get_assemblages boolean
paleofauna road_get_assemblages boolean
age_min road_get_* (except road_get_localities) number
age_max road_get_* (except road_get_localities) number
assemblage_name road_get_* (except road_get_localities) character
comment archaeological road_get_* character
tool_list road_get_lithic_typologies character
typology road_get_lithic_typologies character
percentage road_get_lithic_typologies character
raw_material_list road_get_lithic_raw_materials character
transport_distance road_get_lithic_raw_materials character
percentage road_get_lithic_raw_materials character
organic_tool_interpretation road_get_organic_tools character
organic_raw_material road_get_organic_tools character
organic_tool_technology road_get_organic_tools character
number road_get_organic_tools character
symbolic_artifact_interpretation road_get_symbolic_artifacts character
symbolic_artifact_category road_get_symbolic_artifacts character
symbolic_artifact_material road_get_symbolic_artifacts character
symbolic_artifact_raw_material_source road_get_symbolic_artifacts character
symbolic_artifact_technology road_get_symbolic_artifacts character
feature_interpretation road_get_features character
miscellaneous_find_material road_get_miscellaneous_finds character
miscellaneous_find_raw_material_source road_get_miscellaneous_finds character
number road_get_miscellaneous_finds number
human_remains_id road_get_human_remains number
human_remains_category road_get_human_remains character
genus road_get_human_remains character
species road_get_human_remains character
age road_get_human_remains character
sex road_get_human_remains character
skeletal_element road_get_human_remains character
fauna_genus road_get_paleofauna character
fauna_species road_get_paleofauna character
mni road_get_paleofauna number
mni_method road_get_paleofauna character
nisp road_get_paleofauna number
plant_remains road_get_plantremains character
plant_family road_get_plantremains character
plant_genus road_get_plantremains character
plant_species road_get_plantremains character
element road_get_plantremains character
abundance road_get_plantremains number
relative_abundance road_get_plantremains number
age road_get_dates number
negative_standard_deviation road_get_dates number
positive_standard_deviation road_get_dates number
material_dated road_get_dates character
dating_method road_get_dates character
laboratory_idlaboratory road_get_dates character
publication road_get_publications character

Packages

 
 
 

Contributors

Languages