{spanishoddata}
, {duckdb}
, and flowmapsJuly 3, 2025
What we will do today?
What did we know about human mobility?
Spanish Open Mobility Big Data (Ministerio de Transportes y Movilidad Sostenible (MITMS) 2024)
{spanishoddata}
R package to get the data (Kotov, Lovelace, and Vidal-Tortosa 2024)
Big data analysis with DuckDB
(Raasveldt and Muehleisen 2018) and duckdb
R package (Mühleisen and Raasveldt 2024)
Flowmaps with {flowmapper}
(Mast 2024) and {flowmapblue}
(Boyandin 2024)
explore data
discuss insights, idea and limitations
potentially co-author a workshop-report short paper (in less than 2 weeks, strict deadline) with some visualisations and insights
Image source: Martínez-Durive et al. (2023)
Mobile phone data for humanitarian and development efforts in low- and middle-income countries
Data by Ministerio de Transportes y Movilidad Sostenible (MITMS) (2024)
Based on 13 million customers of Orange Spain, expanded to full population of Spain
Data by Ministerio de Transportes y Movilidad Sostenible (MITMS) (2024)
Based on 13 million customers of Orange Spain, expanded to full population of Spain
View the dashboard at https://data.transportes.gob.es/public/mov-diaria-mensual
View the dashboard at https://data.transportes.gob.es/public/mov-provincial
View the dashboard at https://mapas-movilidad.transportes.gob.es/?date=2025-04-16T22
Uses Labour Force Survey data
(Lucati et al. 2022)
Builds on previous research using mobile phone based data
(Kotov, Bartumeus, and Palmer 2024)

glimpse(od_data)
Rows: ??
Columns: 20
Database: DuckDB v1.2.1 [root@Darwin 24.4.0:R 4.5.0/:memory:]
$ date <date> 2022-01-04, 2022-01-04, 2…
$ hour <int> 0, 0, 0, 1, 1, 3, 4, 4, 5,…
$ id_origin <fct> 01001, 01001, 01001, 01001…
$ id_destination <fct> 01009_AM, 01009_AM, 01009_…
$ distance <fct> 2-10, 2-10, 2-10, 2-10, 2-…
$ activity_origin <fct> home, frequent_activity, w…
$ activity_destination <fct> frequent_activity, home, h…
$ study_possible_origin <lgl> FALSE, FALSE, FALSE, FALSE…
$ study_possible_destination <lgl> FALSE, FALSE, FALSE, FALSE…
$ residence_province_ine_code <fct> 01, 01, 01, 01, 01, 01, 01…
$ residence_province_name <fct> "Araba/Álava", "Araba/Álav…
$ income <fct> 10-15, >15, >15, >15, >15,…
$ age <fct> NA, NA, NA, NA, NA, NA, NA…
$ sex <fct> NA, NA, NA, NA, NA, NA, NA…
$ n_trips <dbl> 4.894, 1.779, 1.094, 1.094…
$ trips_total_length_km <dbl> 27.966, 5.997, 4.081, 4.16…
$ year <int> 2022, 2022, 2022, 2022, 20…
$ month <int> 1, 1, 1, 1, 1, 1, 1, 1, 1,…
$ day <int> 4, 4, 4, 4, 4, 4, 4, 4, 4,…
OpenAI. (2025). A digital image of stacked hard drives on a MacBook representing big data [AI-generated image]. Created using DALL·E. https://openai.com/dall-e
Logos are the property of their respective owners.
Only for illustration purposes. May not accurately represent actual GB usage and DuckDB operation.
Logos are the property of their respective owners.
Only for illustration purposes. May not accurately represent actual GB usage and DuckDB operation.
Logos are the property of their respective owners.
Only for illustration purposes. May not accurately represent actual GB usage and DuckDB operation.
Logos are the property of their respective owners.
Only for illustration purposes. May not accurately represent actual GB usage and DuckDB operation.
Logos are the property of their respective owners.
Only for illustration purposes. May not accurately represent actual GB usage and DuckDB operation.
{flowmapper}
and {flowmapblue}
{flowmapblue}
(Boyandin 2024) for interactive flowmaps{flowmapper}
(Mast 2024) for static flowmaps and producing spatial dataLogos are the property of their respective owners.