Kyle Walker

Kyle Walker

@kylewalker.bsky.social

Demographics | Geospatial | Data Science | Open Source

3.2K followers212 following1.2K posts

tidycensus 2.0.0, one of the milestones from this summer's R Consortium grant, is now on CRAN. The package now has a modernized httr2 backend, lots of internal improvements, and long-requested features like auto-labels for variables. The 2025 1-year ACS drops next week, so update today!

tigris v2.3.0, one of the major milestones from this summer's R Consortium grant, is now on CRAN. - The package has a modern httr2 backend now, which will help the package last into the future; - New features include `population_centers()`, shown here; - The open issue count is now at zero!

I've added support in spopt-r for spider (desire) lines to the package's location-allocation solvers. Spider lines can be straight or can even follow the road network with r5r. This demo uses the new shinyreact framework for Shiny to visualize optimization solutions in real time.

The improved clustering engine in the next release of freestiler can scale beyond a billion points with smooth performance. I've got a powerful MacBook but I did all the processing on a laptop. So many possibilities are getting unlocked in geospatial right now.

View full thread

The dot view shows density and patterns the best, but can be tricky to read. The hexagons highlight broad patterns; click a hexagon to see a group breakdown within it. And the cluster donut view won't be everyone's favorite - but I like the way it shows relative proportions at various scales.

The map is built on top of my R packages tidycensus, freestiler, and mapgl, with data packaged as PMTiles and hosted on Cloudflare then visualized in MapLibre. There's a bonus in the map as well - expand the "About this map" panel to find it!

View: - The classic dot map with all 331 million Americans represented when fully zoomed in; - H3 hexagons that transition on zoom, color-coded by the most common group in the hexagon; - Donut chart clusters that break into smaller clusters, and eventually individual dots, when you zoom in.

Dot locations are simulated within Census blocks; they are not actual residential locations. Plus, the Census protects respondent privacy with noise infusion. Read the dots as broad spatial patterns, not precise information about individuals.

Identifying possible gas-flare operators from satellite heat signals. Mapping persistent NASA VIIRS thermal detections across Texas, then matching the strongest candidates to nearby on-schedule RRC wells and their operators.

I'm excited to share that I've received a grant from R Consortium to modernize R's tigris and tidycensus packages this summer. Over the past decade, tigris and tidycensus have become fixtures in R's demographic and spatial data ecosystems.

View full thread

Everything will just work better and more reliably under the hood. I'll also be clearing out the issue backlogs, fully supporting the existing APIs and adding new features that have long been shelved.

I'm excited to share that I've received a grant from R Consortium to modernize R's tigris and tidycensus packages this summer. Over the past decade, tigris and tidycensus have become fixtures in R's demographic and spatial data ecosystems.

View full thread

While I and other contributors have maintained them - and they both still work well - I've wanted to modernize the infrastructure to ensure they keep working for users for the next 10 years. The R Consortium is generously supporting this project.

This summer, I'll be overhauling the backends of both packages to make them more modern and sustainable. The R interfaces will look the same for users - you won't have to worry about breaking changes to your existing data pipelines.

I'm excited to share that I've received a grant from R Consortium to modernize R's tigris and tidycensus packages this summer. Over the past decade, tigris and tidycensus have become fixtures in R's demographic and spatial data ecosystems.

Together, they've been downloaded nearly 2 million times from the Posit CRAN mirror alone. Much of the underlying code that runs the packages, however, is a decade old. I taught myself R while writing these packages... and if you browse some of the source code, it shows.

Understanding site accessibility by time-of-day is critical for emergency services, supply chain management, retail analytics, and more. Communicate this with @mapbox.com isochrones visualized with mapgl's new slider control in R.

mapgl 0.5.0 for R lets you sync up as many maps as your browser can handle. Shown here: 16 distinct demographic maps for the Atlanta area; interact with one, the other 15 are kept in sync. Now I'm not necessarily recommending a 16-panel map... but it's fun to see what's possible.

The new slider control in R's mapgl package (v0.5.0) isn't just for time-based filtering. Give it a list of paint expressions and you can animate changes over time on your map. Example: population changes at the tract level in Florida, animated in 3D.

The upcoming v0.5 release of mapgl for #rstats is going to be massive. Included: a slider control that allows for interactive data filtering - no Shiny required. Thanks to @ekotov.pro - brush a window over a histogram, see your data filter in real-time Lots more examples to share this week

Working on H3 integration into freestiler, my R/Python vector tiling tool. The new feature uses @duckdb.org internally to dynamically aggregate points into a multi-layer hexagonal tileset based on some function (summary stats, or your own custom SQL). Tiled here: 12M US groundwater wells

I grew up in Oregon without air conditioning, it seemed quite normal at the time, we just pulled out the box fans when it got hot in the summer. Fascinating to explore the patterns in this new Census data - lots of areas around Oregon / the US where AC prevalence isn't as high as you might expect.

Final reminder: today's the last day to grab my Census / mapping workshop catalog before the store shuts down tonight. Lifetime access to 25+ hours of recordings, 11 custom tutorials, $99. I really appreciate all of you who have bought it this week!

walkerdata.gumroad.comAll workshops clearance bundleCLEARANCE: All past workshops can be purchased together for only $99!Get access to over 25 hours of recordings for thousands of dollars in savings. Workshops will be retired May 22nd - so act now!

- A single-year-of-age profile chart comparing 2000, 2010, and 2020 decennial distributions, with tips on making these for all US states in parallel; - Animating drive-time areas in DC by time-of-day and traffic patterns.

Get lifetime access to 25+ hours of recordings and 11 annotated tutorials for $99: Friday is the last chance to buy - all workshops will be archived for good after that.

I'm retiring my R workshops. I'm as committed to R as ever, but the market for workshops has shifted & I'm focusing on other exciting ventures. I bundled the full catalog for $99; grab it (25+ hours, 11 tutorials) before I archive it on Friday. walkerdata.gumroad.com/l/all-worksh...

walkerdata.gumroad.comAll workshops clearance bundleCLEARANCE: All past workshops can be purchased together for only $99!Get access to over 25 hours of recordings for thousands of dollars in savings. Workshops will be retired May 22nd - so act now!

I love living in Fort Worth. And I think it's cool that we're now the 10th largest city by population in the US. But it's important to put this into context.

Not "flashy" for social media, but some useful quality-of-life features have landed in the development version of R's mapgl package: - Bezier curves and Bezier polygons in the draw control; - A coordinates control to track your mouse position (decimal or DMS);

The draw control is now much more than a drawing toolbar: it works as an interactive feature editing environment. You can draw areas of interest, measure them live, edit attributes on the fly, then pull those features straight back into your R session.