I write these tools for problems that keep coming up in survey work: getting data out of SurveyCTO, handling dates recorded in the Ethiopian calendar, and finding microdata in public catalogs. Three are R packages on CRAN and two are Stata modules on SSC. The R packages are MIT-licensed and the source code is on GitHub.
ctoclient
A data pipeline for SurveyCTO in R and Stata
R · CRANStata · SSCSince 2026
An R client for the SurveyCTO REST API, built on httr2. It downloads form submissions and tidies them: fields get their proper types, geopoints are split and select_multiple columns are filled in. It also handles encrypted forms, attachments and server datasets, and writes Stata labelling do-files. The Stata module uses the same command names.
cto_connect()cto_form_data()cto_form_data_attachment()cto_form_dofile()
Install
Rinstall.packages("ctoclient")
Statassc install ctoclient
ethiodate
Ethiopian dates in R and Stata
R · CRANStata · SSCSince 2025
Ethiopian dates that behave like base R Date objects. The package converts between the Ethiopian and Gregorian calendars, parses dates written in common formats, checks leap years and the thirteenth month (Pagume), and works with dplyr, ggplot2 and lubridate. The core is written in C++ with Rcpp. The Stata module does the same conversions.
eth_date()eth_parse_date()eth_weekday()scale_x_ethdate()
Install
Rinstall.packages("ethiodate")
Statassc install ethiodate
nadaverse
Search the world's microdata catalogs from R
R · CRANSince 2025
Searches microdata catalogs that run on NADA, including those of the World Bank, IHSN, FAO, UNHCR and ILO, and returns study metadata, file lists and data dictionaries as data frames. Built on httr2.
catalogs()search_catalog()data_files()data_dictionary()
Install
Rinstall.packages("nadaverse")
No matching items
Found a bug or want a feature? Open an issue on the package’s GitHub page.
Back to top