PhD Studentship Opportunity: "Quantifying Forest Plantation Damage After Cyclones Using Earth Observation"
This funded project at the University of Exeter tackles a real and urgent global challenge: rapidly assessing storm damage in forest plantations.
Full description on tinyurl.com/4tdw3yw6.
17.11.2025 12:00 β π 0 π 1 π¬ 0 π 0
One thing I appreciate about {targets} is the robustness of the pipeline: if I need to stop a long, compute-intensive process to run something else (or, in this case, I resize a pane and make the IDE crashπ€·ββοΈ), I don't need to worry about corrupted state: just restart R and tar_make() away!
#RStats
17.11.2025 14:11 β π 14 π 1 π¬ 0 π 0
Iβm thrilled to share that my new book (Spatial Data Management with DuckDB) is now published! π
At 430 pages, this book provides a practical, hands-on guide to scalable geospatial analytics and visualization using DuckDB. All code examples are open-source and freely available on GitHub.
15.11.2025 18:44 β π 54 π 12 π¬ 3 π 1
π₯ {torchgnn} πΈοΈ is a WIP implementation of Graph Neural Networks in R.
- GCN
- GCN (generalized)
- GraphSAGE
- Aggregators
Development based on personal needs, ofc :)
#rstats
github.com/JosiahParry/...
13.11.2025 20:14 β π 18 π 10 π¬ 0 π 0
The `enable_shiny_hover()` function in mapgl for #rstats lets you use your mouse's position as a Shiny input.
Be judicious with how you use it... but it unlocks so many possibilities for mapping your data.
Example: Census tracts that restyle based on your cursor position
12.11.2025 20:53 β π 13 π 2 π¬ 1 π 1
3D mountain rendered from above
A look from the side of a render of a 3D mountain with dramatic lighting
Day 6 of the #30DayMapChallenge (3D), a render of Mount Rainier with a realistic atmospheric skydome generated w/ a lat/long/datetime, rendered entirely in #RStats with #rayshader and #rayrender! The atmosphere is annoyingly realistic: I now have to dial in the exposure depending on the time of day!
08.11.2025 01:14 β π 78 π 10 π¬ 7 π 0
with{targets}, might seem that *your workflow* is complex and bespoke and not fit, you are probably wrong - it makes the expertise that is truly *yours* shine and grow. Encapsulate an entire production process and makes that easy to do
it's more *you*, actually - keep at it! #rstats
08.11.2025 05:18 β π 13 π 2 π¬ 1 π 0
Oh thanks, yeah tar_older is new to me, that's handy!
07.11.2025 11:48 β π 1 π 1 π¬ 0 π 0
Fantastic to welcome @trishg.bsky.social to the group today π₯³
Trisha is on an 1851 fellowship and will be working on resilience loss in savannahs with myself, @tommaso-jucker.bsky.social and @mdekauwe.bsky.social
@bristolbiosci.bsky.social
scholar.google.com/citations?us...
03.11.2025 13:49 β π 9 π 2 π¬ 0 π 1
#rstats how do I make a target time-out, I want one in particular to only run every month or two
there's a backlog of file urls, normal use is target_this_year, but every now and then I want the prior target_all_years to invalidate and do a full scan
03.11.2025 04:24 β π 0 π 2 π¬ 2 π 0
Target with a custom condition to force execution. β tar_force
Create a target that always runs if a user-defined
condition rule is met.
Maybe create one target which logs the time the initial action was run and the use tar_force docs.ropensci.org/tarchetypes/... to conditionally check that time and force execution if the time is right?
03.11.2025 11:40 β π 0 π 1 π¬ 1 π 0
I can see {targets} evolving past tar_assign to an actual new language syntax that's just R (its successor)
I bet some are already thinking about this #rstats it's been an inexorable series of improvs and the foundation's so solid
This is the edge, actual reproducibility and scaling
03.11.2025 06:37 β π 12 π 2 π¬ 0 π 0
5Β Raster-vector interactions β Geocomputation with Python
An introductory resource for working with geographic data in Python
Working with raster + vector together in Python? πΊοΈππ
Chapter 5 of geocompx talks about:
- Cropping & masking rasters with vectors
- Extracting raster values via vector data
- Raster βοΈ vector conversion (polygonize & rasterize)
π py.geocompx.org/05-raster-ve...
#GeoPython #Python #GISchat
02.11.2025 14:01 β π 10 π 2 π¬ 0 π 0
An image of three mountains (Mt Shasta, Mt Adams, Mt Rainier), showing each mountain in an elevation view (i.e. seen from the front). Each mountain is illustrated by means of sketch lines.
An image of Aoraki, seen from the ground level. It is illustrated with sketch lines in black and white.
It's been a long journey (>1 year since I began), but there's finallt a public release of the oblique hachures method. With many thanks to @southarrowmaps.co.nz, who significantly refined the methodology from what I began with.
Writeup (w/ a link to the script): docs.google.com/document/d/1...
01.11.2025 02:24 β π 43 π 10 π¬ 3 π 2
Copernicus Sentinel-2 close up view of the eye on the hurricane on 28 October 2025
Copernicus Sentinel-3 image of the hurricane from 27 October 2025
Viewed by #CopernicusEU Sentinel satellites, hurricane #Melissa seen over the Caribbean, currently the strongest tropical cyclone of the year worldwide.
Our thoughts are with everyone affected. Please follow guidance from local authorities and stay safe.
@noaa.gov @euspa.bsky.social @eumetsat.int
30.10.2025 09:17 β π 171 π 35 π¬ 1 π 2
is element84 queries not working for some reason atm
30.10.2025 09:30 β π 0 π 1 π¬ 1 π 0
A visualisation of the bathymetric contours of a spot in the Andaman Sea
Somewhere in the Andaman Sea.
#rayshader adventures, an #rstats tale
26.10.2025 02:00 β π 19 π 4 π¬ 0 π 1
I'm guessing that R6 classes are implemented with environment shenanigans which is why base R plots can't be updated with class methods. Regardless, what's the best way to modify an existing plot within a method call? Is there a conventional pattern for passing the global environment or the like?
26.10.2025 02:45 β π 2 π 2 π¬ 1 π 0
why tf does it suddenly work ...
21.10.2025 11:44 β π 2 π 1 π¬ 0 π 0
Does targets::tar_cancel()/tarchetypes::tar_skip() not work with dynamic branching? I get "invalid 'description' argument" when downstream arguments depend on the cancelled target. My expectation would be that the cancellation would propagate to any downstream targets.
#RStats
16.10.2025 17:44 β π 0 π 3 π¬ 1 π 0
Minimalist Async Evaluation Framework for R
Designed for simplicity, a mirai evaluates an R expression asynchronously in a parallel process, locally or distributed over the network. Modern networking and concurrency, built on nanonext and NNG, ...
I recently added a Deepwiki badge to mirai.r-lib.org.
Not because I think the current documentation is lacking π
, but it takes you to an `Ask DeepWiki` prompt with the full mirai source code as context so you can ask questions (and get answers) in *any* language.
Any feedback welcome! #rstats
13.10.2025 14:46 β π 12 π 4 π¬ 0 π 0
how's your day going
#rstats
paste0(sample(c(letters, LETTERS, 0:9,
strsplit("!@#$%^&*()_+=-~", "")[[1]]), 56),
collapse = "")
09.10.2025 23:32 β π 4 π 2 π¬ 0 π 0
hey spatial folks: if anyone has a great "parquet versus zarr" write-up, let me know. I'm never going to write a serializer but I'm really interested in the performance impacts of format for cloud downloads π
#geosky
04.10.2025 13:32 β π 8 π 4 π¬ 3 π 1
Iβm in the process of wiring a blog post (and @nacis.bsky.social talk) on using Python to drive GDAL. Has anyone tried this and been confused? If so, what tripped you up? Or if youβre an expert and have opinions, would you be willing to provide feedback? π
#cartography #python #gdal
07.10.2025 00:40 β π 14 π 4 π¬ 5 π 0
8 years old blog post, sad musing API being hidden under weaker downstream packages:
www.hypertidy.org/posts/2017-0...
so much has changed! I could write the same story but for R and Python now, good news though: {gdalraster}, duckdb, pyogrio, odc, mdim, and huge improvs in GDAL itself
08.10.2025 19:36 β π 3 π 1 π¬ 1 π 0
Introducing {pmtiles}: an #rstats package to create, view, and interact with PMTiles.
PMTiles is one of the most exciting geospatial innovations in recent years. Map tiles are stored & served from a single file, making massive geospatial data visualization widely accessible.
02.10.2025 14:26 β π 29 π 8 π¬ 1 π 1
question_parallel_pyfutures.md
GitHub Gist: instantly share code, notes, and snippets.
kicking python concurrent.futures butt with {mirai} #rstats
gist.github.com/mdsumner/898...
(there's no reason ThreadPoolExecutor should not be as fast, I'm genuinely looking for an answer to what I'm doing wrong there)
/1
27.09.2025 06:35 β π 5 π 1 π¬ 1 π 0
πExploring Sentinel-2 with the Copernicus Data Space Ecosystem (CDSE)?
Hugh Grahamβs guide with vrtility in #rstats. Includes authentication & query of imagery and building cloud-free composites.
permian-global-research.github.io/vrtility/art...
#RSpatial #RemoteSensing #EarthObservation #GIS
24.09.2025 13:03 β π 11 π 5 π¬ 0 π 0
In all honesty, it's just the same as sourcing files like others have suggested. I just made extra splits because my workflow required lots of branching. I don't usually need to split things into modules and units. Organising targets objects across scripts is a good way to organise things for sureπ
15.09.2025 01:28 β π 1 π 0 π¬ 0 π 0
nanonext 1.7.0
nanonext is a communications and concurrency toolbox that facilitates fast, powerful and reliable data exchange in polyglot data science workflows.
tidyverse blog: Breaking down language barriers in data science
nanonext is a messaging and concurrency toolkit, connecting R to polyglot data science pipelines involving modules written in Python, Rust, Go and C++ etc.
www.tidyverse.org/blog/2025/09...
#RStats #tidyverse
02.09.2025 18:37 β π 32 π 7 π¬ 1 π 0
Associate Professor @UTKnoxville | Amazon Scholar | Creator of #geemap & #leafmap | Talk about #Geospatial #GeoPython #DataViz #GIS #FOSS #EarthEngine
Postdoctoral Research Fellow at University of Exeter, UK Geographyπ°οΈπΏ. Previously University of Oxford, Duke University and the Nature Conservancy
Associate Professor, Bristol University π§ͺ
Resilience loss βοΈ Early warning signals β οΈ multiple stressors π biodiversity change π rewilding π¦«
π experimentalconservation.com
Editor at Biology Letters.
smitten with #rstats Β· associate prof Β· political economy Β· the #rayverse's number one fan
Scientist π β’ Postdoc @ Swiss Ornithological Institute β’ Launching global bird natal dispersal project π β’ Movement ecology (barn owls, seabirds & soaring migrants) β’ he/his
π paolobecciu.com
Zealous modeler. Annoying statistician. Reluctant geometer. Support my writing at http://patreon.com/betanalpha. He/him.
PhD - Remote Sensing and Conservation
https://github.com/lionel-
Head of Selva lab at the University of Bristol: https://www.selvalab.org
Inordinate fondness for trees and lasers π³ π°οΈ
We build technology to create data, apply science, influence, guide and measure effective actions on the most pressing climate and conservation issues of our times.
https://Earthgenome.org
Data Visualization. Ex-Planet & NASA Earth Observatory. Blue Marble, Earth at Night, color, cartography, occasionally skewed views of Earth. Looking for a job.
Research Fellow at Bournemouth University Institute for the Modelling of Socio-Environmental Transitions (IMSET) Working on 'Comparative Legacies of Human Land [β¦]
π bridged from β https://sciences.social/@barneyharris, follow @ap.brid.gy to interact
Director of Training/Community at the Data Science Lab at Fred Hutch. Former OHSU, DNAnexus. Posit Data Science Mentor (when I have the time) #bioinformatics, #datascience, #teaching, and #ambientmusic. https://laderast.github.io
Director at OpenGeoHub / and technical director at EnvirometriX. I am a data scientist passionately promoting open data & FOSS4G, automated soil mapping, Machine Learning for environmental data, global data sets, R spatial and spatio-temporal modeling...
Local historian, bike rider, and #RStats developer. Planner for Baltimore city. Poster at @elipousson@dads.cool
The central mission of the R Consortium is to support to the R Foundation and key organizations developing, maintaining, distributing R software through the identification, development and implementation of infrastructure projects.
Ecology, theory, computers. https://carlboettiger.info
Visualization toolmaker. Founder of Observable. Creator of D3. Former NYT Graphics. Pronounced BOSS-tock.
Software engineer building products at @posit.co. Occasional open-source #rstats work. Obscure Linux/ZFS stuff on the side.