jiayuasu opened a new pull request, #3318: URL: https://github.com/apache/sedona/pull/3318
## Did you read the Contributor Guide? - Yes, I have read the [Contributor Rules](https://sedona.apache.org/latest/community/rule/) and [Contributor Development Guide](https://sedona.apache.org/latest/community/develop/) ## Is this PR related to a ticket? - No: - this is a documentation update. The PR name follows the format `[DOCS] my subject` ## What changes were proposed in this PR? New blog post, "GROUP BY, But for Pixels", on zonal statistics with `RS_ZonalStatsAll` / `RS_ZonalStats`. - Reads 18 Copernicus 90 m DEM tiles from the anonymous `copernicus-dem-90m` bucket with the tiled `raster` reader (`retile = false`) and joins them to the 26 Swiss cantons from Overture `division_area` with `RS_Intersects` - Explains the tile-zone fan-out (62 pairs) and which statistics can be re-aggregated across pairs (count/sum/min/max, mean as sum/count) versus those that cannot (median, mode, stddev, variance) - Documents the empty-pair case: a tile whose footprint intersects a zone but holds no pixel center returns an all-zero struct, so `MIN(s.min)` needs `WHERE s.count > 0` - Second act reuses the same pairs with a raster Python UDF computing slope, cross-linking the raster UDF post - Figures: cover (shaded relief from the loaded DEM, cantons tinted by mean elevation), a min/mean/max dumbbell chart, and an elevation-vs-slope scatter Files: `docs/blog/posts/zonal-statistics.md` plus three PNGs. ## How was this patch tested? - Every number and console block comes from runs on the released 1.9.1 artifacts (`apache-sedona==1.9.1`, `sedona-spark-shaded-3.5_2.12:1.9.1`, `geotools-wrapper:1.9.1-33.5`, `hadoop-aws:3.3.4`) against the public S3 buckets named in the post; the end-to-end query was timed from a cold session - The empty-pair behaviour and the naive-vs-filtered `min` were verified with a side-by-side query; the 30 m Copernicus product was run for the resolution comparison - `pre-commit run --files` on all four files passes; `pre-commit run oxipng --hook-stage manual` passes on the PNGs (second run clean) ## Did this PR include necessary documentation updates? - Yes, I have updated the documentation. -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected]
