Welcome to ClientVPS Mirrors

Reading Zarr V3

Reading Zarr V3

pizzarr can read Zarr stores in both V2 and V3 format. This vignette demonstrates opening the same dataset (BCSD climate observations) stored in each format and shows the data are identical.

Open V2 and V3 stores

library(pizzarr)

v2_root <- pizzarr_sample("bcsd")
v3_root <- pizzarr_sample("bcsd_v3")

v2 <- zarr_open(v2_root)
v3 <- zarr_open(v3_root)

Compare group attributes

v2_attrs <- v2$get_attrs()$to_list()
v3_attrs <- v3$get_attrs()$to_list()

identical(v2_attrs, v3_attrs)
#> [1] TRUE

Compare arrays

# Precipitation array
v2_pr <- v2$get_item("pr")$as.array()
v3_pr <- v3$get_item("pr")$as.array()

identical(v2_pr, v3_pr)
#> [1] TRUE

# Temperature array
v2_tas <- v2$get_item("tas")$as.array()
v3_tas <- v3$get_item("tas")$as.array()

identical(v2_tas, v3_tas)
#> [1] TRUE

# Coordinate arrays
identical(v2$get_item("latitude")$as.array(), v3$get_item("latitude")$as.array())
#> [1] TRUE
identical(v2$get_item("longitude")$as.array(), v3$get_item("longitude")$as.array())
#> [1] TRUE
identical(v2$get_item("time")$as.array(), v3$get_item("time")$as.array())
#> [1] TRUE

Inspect an array

v3$get_item("pr")$get_shape()
#> [1] 12 33 81

v3$get_item("pr")$get_attrs()$to_list()
#> $`_ARRAY_DIMENSIONS`
#> $`_ARRAY_DIMENSIONS`[[1]]
#> [1] "time"
#> 
#> $`_ARRAY_DIMENSIONS`[[2]]
#> [1] "latitude"
#> 
#> $`_ARRAY_DIMENSIONS`[[3]]
#> [1] "longitude"
#> 
#> 
#> $coordinates
#> [1] "time latitude longitude "
#> 
#> $long_name
#> [1] "monthly_sum_pr"
#> 
#> $name
#> [1] "pr"
#> 
#> $units
#> [1] "mm/m"

Need a high-speed mirror for your open-source project?
Contact our mirror admin team at info@clientvps.com.

This archive is provided as a free public service to the community.
Proudly supported by infrastructure from VPSPulse , RxServers , BuyNumber , UnitVPS , OffshoreName and secure payment technology by ArionPay.