# ICES rectangles

library(csquares)

## ICES Statistical Rectangles

Support for ICES rectangles is experimental

ICES statistical rectangles is a notation system developped by the International Council for the Exploration of the Sea (ICES). The packages allows you to convert the notation into a sf object. The example and illustration below shows a small subset of ICES rectangles and subrectangles.

library(sf)
my_ices_codes <-
c("31F21", "31F22", "31F23", "31F24", "31F25", "31F26", "31F27", "31F28", "31F29",
"32F2", "33F2", "34F2", "35F2",
"31F3", "32F3", "33F3", "34F3", "35F3",
"31F4", "32F4", "33F4", "34F4", "35F4")

my_ices_rects <- ices_rectangles(my_ices_codes)

ICES subrectangles divide the parent ICES rectangle into 3 by 3 equal rectangles. Unfortunately, this makes the subrectangles incompatible with Csquares as those divide parent rectangles into 2 by 2 or 10 by 10 equal rectangles. The csquares package offers some helper functions to convert ICES rectangles to csquares and vice versa. The example below show how to get the corresponding csquares codes for the requested ICES rectangles.

library(dplyr)

ices_csq <-
## Note that ICES subrects return empty csquares
ices_to_csquares(my_ices_codes) |>
## Remove empty csquares as those can not be converted into geometries
filter(!is.na(csquares)) |>
#> csquares.
The subrectangles produces NA values and shows a warning. This yields the csquares as depicted below.
ices_from_csquares(ices_csq)
#> [11] "32F4" "33F4" "34F4" "35F4"