hyper_array | R Documentation |
Extract the raw array data as a list of one or more arrays. This can be the
entire variable/s or after dimension-slicing using hyper_filter()
expressions. This is a delay-breaking function and causes data to be read
from the source into R native arrays. This list of arrays is
lightly classed as tidync_data, with methods for print()
and tidync()
.
hyper_array( x, select_var = NULL, ..., raw_datavals = FALSE, force = FALSE, drop = TRUE ) hyper_slice( x, select_var = NULL, ..., raw_datavals = FALSE, force = FALSE, drop = TRUE ) ## S3 method for class 'tidync' hyper_array( x, select_var = NULL, ..., raw_datavals = FALSE, force = FALSE, drop = TRUE ) ## S3 method for class 'character' hyper_array( x, select_var = NULL, ..., raw_datavals = FALSE, force = FALSE, drop = TRUE )
x |
NetCDF file, connection object, or tidync object |
select_var |
optional vector of variable names to select |
... |
passed to |
raw_datavals |
logical to control whether scaling in the NetCDF is applied or not |
force |
ignore caveats about large extraction and just do it |
drop |
collapse degenerate dimensions, defaults to |
The function hyper_array()
is used by hyper_tibble()
and hyper_tbl_cube()
to actually extract data arrays from NetCDF, if a result would be particularly large
there is a check made and user-opportunity to cancel. This is controllable as an
option getOption('tidync.large.data.check')
, and can be set to never check with
options(tidync.large.data.check = FALSE)
.
The function hyper_array()
will act on an existing tidync object or a source
string.
By default all variables in the active grid are returned, use select_var
to
specify one or more desired variables.
The transforms are stored as a list of tables in an attribute 'transforms“,
access these with hyper_transforms()
.
print.tidync_data for a description of the print summary,
hyper_tbl_cube()
and hyper_tibble()
which are also delay-breaking
functions that cause data to be read
f <- "S20080012008031.L3m_MO_CHL_chlor_a_9km.nc" l3file <- system.file("extdata/oceandata", f, package= "tidync") ## extract a raw list by filtered dimension library(dplyr) araw1 <- tidync(l3file) %>% hyper_filter(lat = between(lat, -78, -75.8), lon = between(lon, 165, 171)) %>% hyper_array() araw <- tidync(l3file) %>% hyper_filter(lat = abs(lat) < 10, lon = index < 100) %>% hyper_array() ## hyper_array will pass the expressions to hyper_filter braw <- tidync(l3file) %>% hyper_array(lat = abs(lat) < 10, lon = index < 100) ## get the transforms tables (the axis coordinates) lapply(attr(braw, "transforms"), function(x) nrow(dplyr::filter(x, selected))) ## the selected axis coordinates should match in order and in size lapply(braw, dim)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.