chiOpenData provides simple, reproducible access to Chicago-related datasets from the
Chicago Open Data Portal platform — directly from R, with no API keys or manual downloads required. Working directly with Socrata APIs can be cumbersome — chiOpenData simplifies this process into a clean, reproducible workflow.
Version 0.1.0 introduces a streamlined, catalog-driven interface for Chicago Open Data, extending the open data ecosystem beyond New York to support cross-city analysis and comparative civic research.
The package provides three core functions:
-
chi_list_datasets()— Browse available datasets from the live Chicago Open Data catalog -
chi_pull_dataset()— Pull any cataloged dataset by key, with filtering, ordering, and optional date controls -
chi_any_dataset()— Pull any Chicago Open Data dataset directly via its Socrata JSON endpoint
Datasets pulled via chi_pull_dataset() automatically apply sensible defaults from the catalog (such as default ordering and date fields), while still allowing user control over:
- limit
- filters
- date / from / to
- where
- order
- clean_names
- coerce_types
This redesign reduces maintenance burden, improves extensibility, and provides a more scalable interface for working with Chicago Open Data.
All functions return clean tibble outputs and support filtering viafilters = list(field = "value").
Example
library(chiOpenData)
crime_data <- chi_pull_dataset(
dataset = "crimes_2001_to_present",
limit = 1000
)
head(crime_data)
#> # A tibble: 6 × 33
#> id case_number date block iucr primary_type description
#> <dbl> <chr> <dttm> <chr> <chr> <chr> <chr>
#> 1 14154731 JK202681 2026-04-01 00:00:00 032XX… 1150 DECEPTIVE P… CREDIT CAR…
#> 2 14154065 JK202226 2026-04-01 00:00:00 042XX… 2027 NARCOTICS POSSESS - …
#> 3 14153495 JK201347 2026-04-01 00:00:00 004XX… 2826 OTHER OFFEN… HARASSMENT…
#> 4 14158479 JK207388 2026-04-01 00:00:00 002XX… 2825 OTHER OFFEN… HARASSMENT…
#> 5 14156762 JK205044 2026-04-01 00:00:00 117XX… 1750 OFFENSE INV… CHILD ABUSE
#> 6 14153888 JK201795 2026-04-01 00:00:00 069XX… 0486 BATTERY DOMESTIC B…
#> # ℹ 26 more variables: location_description <chr>, arrest <lgl>,
#> # domestic <lgl>, beat <dbl>, district <dbl>, ward <dbl>,
#> # community_area <dbl>, fbi_code <chr>, x_coordinate <dbl>,
#> # y_coordinate <dbl>, year <dbl>, updated_on <dttm>, latitude <dbl>,
#> # longitude <dbl>, computed_region_awaf_s7ux <dbl>,
#> # computed_region_6mkv_f3dw <dbl>, computed_region_vrxf_vc4k <dbl>,
#> # computed_region_bdys_3d7i <dbl>, computed_region_43wa_7qmu <dbl>, …About
chiOpenData makes Chicago’s civic datasets accessible to students,
educators, analysts, and researchers through a unified and user-friendly R interface.
Developed to support reproducible research, open-data literacy, and real-world analysis.
Comparison to Other Software
While the RSocrata package provides a general interface for any Socrata-backed portal, chiOpenData is specifically tailored for Chicago Open Data Portal.
This package is part of a broader ecosystem of tools for working with open data:
-
nycOpenData— streamlined access to NYC Open Data
-
nysOpenData— streamlined access to NY State Open Data -
mtaOpenData— streamlined access to MTA-related NY State Open Data
Together, these packages provide a consistent, user-friendly interface for working with civic data across jurisdictions.
-
Ease of Use: No need to hunt for 4x4 dataset IDs (e.g.,
2ucp-7wg5); use catalog-based keys instead. - Open Literacy: Designed specifically for students and researchers to lower the barrier to entry for civic data analysis.
Contributing
We welcome contributions! If you find a bug or would like to request a wrapper for a specific Chicago dataset, please open an issue or submit a pull request on GitHub.
Authors & Contributors
Maintainer
Christian A. Martinez 📧 c.martinez0@outlook.com
GitHub: @martinezc1