
Discover and inspect data packages
Source:vignettes/discover-and-inspect.Rmd
discover-and-inspect.RmdThis article shows how to choose a Global Light Commons package and
understand its contents before downloading or importing measurements.
Every example uses the validated MELIDOS IZTECH package, whose current
passing revision uses schema 3.0.2. Remote examples run on the pkgdown
website but remain unevaluated in ordinary package and CRAN builds. Set
GLCDP_SKIP_LIVE=true to request an offline website
build.
Understand the registry
glc_packages() returns one row per registered
repository. The most useful fields distinguish the repository’s current
revision from its most recent passing revision:
-
current_statusandcurrent_commitdescribe the configured current revision; -
latest_pass_commitandhas_latest_passidentify the last validated revision available for reproducible use; and -
attestation_verifiedreports whether the registry attestation was verified.
packages <- glc_packages()
packages[, c(
"id", "repository", "current_status", "has_latest_pass",
"attestation_verified"
)]
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> # A tibble: 3 × 5
#> id repository current_status has_latest_pass attestation_verified
#> <chr> <chr> <chr> <lgl> <lgl>
#> 1 guidolin-glee-… tscnlab/g… pass TRUE TRUE
#> 2 melidos-iztech… tscnlab/m… pass TRUE TRUE
#> 3 melidos-knust-… tscnlab/m… pass TRUE TRUERegistry results are cached for the R session. Set
refresh = TRUE only when you need to fetch the registry
again.
packages <- glc_packages(refresh = TRUE)Searches are fixed and case-insensitive by default:
glc_search_packages("iztech", packages)
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> # A tibble: 1 × 17
#> id repository branch repository_status current_status current_commit
#> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 melidos-izt… tscnlab/m… main active pass 9353a0c4287d4…
#> # ℹ 11 more variables: current_validator <chr>, current_validated_at <chr>,
#> # current_errors <int>, current_warnings <int>, latest_pass_commit <chr>,
#> # latest_pass_validator <chr>, latest_pass_validated_at <chr>,
#> # has_latest_pass <lgl>, is_current_pass <lgl>, attestation_verified <lgl>,
#> # registry_generated_at <chr>
glc_search_packages(packages = packages, status = c("pass", "fail"))
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> # A tibble: 3 × 17
#> id repository branch repository_status current_status current_commit
#> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 guidolin-gl… tscnlab/g… main active pass 8ec9034a3d967…
#> 2 melidos-izt… tscnlab/m… main active pass 9353a0c4287d4…
#> 3 melidos-knu… tscnlab/m… main active pass a7e4d17a7ea7f…
#> # ℹ 11 more variables: current_validator <chr>, current_validated_at <chr>,
#> # current_errors <int>, current_warnings <int>, latest_pass_commit <chr>,
#> # latest_pass_validator <chr>, latest_pass_validated_at <chr>,
#> # has_latest_pass <lgl>, is_current_pass <lgl>, attestation_verified <lgl>,
#> # registry_generated_at <chr>
glc_search_packages(packages = packages, has_pass = FALSE)
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> <GLC registry>
#> Generated: 2026-08-01T16:31:38.485487+00:00
#> # A tibble: 0 × 17
#> # ℹ 17 variables: id <chr>, repository <chr>, branch <chr>,
#> # repository_status <chr>, current_status <chr>, current_commit <chr>,
#> # current_validator <chr>, current_validated_at <chr>, current_errors <int>,
#> # current_warnings <int>, latest_pass_commit <chr>,
#> # latest_pass_validator <chr>, latest_pass_validated_at <chr>,
#> # has_latest_pass <lgl>, is_current_pass <lgl>, attestation_verified <lgl>,
#> # registry_generated_at <chr>Choose a revision deliberately
Opening a registered package with the default
ref = "latest_pass" selects an exact passing commit, not a
moving branch:
iztech_repository <- "tscnlab/melidos-iztech-glc-dataset"
iztech <- glc_open(iztech_repository)
iztech
#> <GLC data package>
#> Source: tscnlab/melidos-iztech-glc-dataset@9353a0c4287d
#> Schema: 3.0.2
#> Registry revision: verifiedUse ref = "current" when you explicitly need the
registry’s current revision. If that revision is not passing,
glcdp warns. You can also provide an exact 40-character
commit SHA; commits that are not selected through a registry record are
marked as unverified.
current <- glc_open(
iztech_repository,
ref = "current"
)
current
#> <GLC data package>
#> Source: tscnlab/melidos-iztech-glc-dataset@9353a0c4287d
#> Schema: 3.0.2
#> Registry revision: verified
registry_row <- glc_search_packages("melidos-iztech", packages)
registry_row$repository[[1]]
#> [1] "tscnlab/melidos-iztech-glc-dataset"
registry_row$latest_pass_commit[[1]]
#> [1] "9353a0c4287d44cb400d30f45d7dbcf9910f9bde"
pinned <- glc_open(
registry_row$repository[[1]],
ref = registry_row$latest_pass_commit[[1]]
)
pinned
#> <GLC data package>
#> Source: tscnlab/melidos-iztech-glc-dataset@9353a0c4287d
#> Schema: 3.0.2
#> Registry revision: verifiedFor private repositories, pass token directly or define
GITHUB_PAT or GITHUB_TOKEN. Do not put tokens
in scripts, vignettes, or package options.
Start with a package summary
glc_summary() reports the schema version and counts of
studies, datasets, participants, devices, file groups, files, and
variables. It also summarizes modalities, time zones, and primary
variables.
glc_summary(iztech)
#> <GLC package summary>
#> Schema: 3.0.2
#> Studies: 1 | Datasets: 17 | Participants: 17
#> File groups: 323 | Files: 323 | Variables: 5554Explore inventories
The inventories are tibbles, so they can be printed, filtered, or joined using ordinary data-frame tools.
glc_resources(iztech)
#> # A tibble: 6 × 10
#> resource path core directory format media_type profile schema_path delimiter
#> <chr> <chr> <lgl> <lgl> <chr> <chr> <chr> <chr> <chr>
#> 1 study data… TRUE FALSE NA applicati… json-e… schemas/3.… NA
#> 2 partici… data… TRUE FALSE csv text/csv tabula… schemas/3.… NA
#> 3 partici… data… TRUE FALSE csv text/csv tabula… schemas/3.… NA
#> 4 datasets data… TRUE FALSE NA applicati… json-e… schemas/3.… NA
#> 5 devices data… TRUE FALSE NA applicati… json-e… schemas/3.… NA
#> 6 device_… data… TRUE FALSE NA applicati… json-e… schemas/3.… NA
#> # ℹ 1 more variable: decimal_mark <chr>glc_datasets() describes logical datasets and their
associations. Once you have a dataset id, reuse it to narrow the other
inventories.
iztech_dataset <- "MELIDOS_IZTECH_S001"
iztech_demographics <- "MELIDOS_IZTECH_S001:4"
iztech_chest_light <- "MELIDOS_IZTECH_S001:17"
glc_datasets(iztech)
#> # A tibble: 17 × 13
#> dataset_id schema_version study_id participant_id participant_associated
#> <chr> <chr> <chr> <chr> <lgl>
#> 1 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S001 TRUE
#> 2 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S002 TRUE
#> 3 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S003 TRUE
#> 4 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S004 TRUE
#> 5 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S005 TRUE
#> 6 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S006 TRUE
#> 7 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S007 TRUE
#> 8 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S008 TRUE
#> 9 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S009 TRUE
#> 10 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S010 TRUE
#> 11 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S011 TRUE
#> 12 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S012 TRUE
#> 13 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S013 TRUE
#> 14 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S014 TRUE
#> 15 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S015 TRUE
#> 16 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S016 TRUE
#> 17 MELIDOS_IZTECH… 3.0.2 MELIDOS… IZTECH_S017 TRUE
#> # ℹ 8 more variables: timezone <chr>, latitude <dbl>, longitude <dbl>,
#> # file_group_count <int>, file_count <int>, modalities <list>,
#> # device_ids <list>, primary_variables <list>
glc_files(iztech, dataset_id = iztech_dataset)
#> # A tibble: 19 × 30
#> dataset_id file_group file_group_id participant_id study_id path
#> <chr> <int> <chr> <chr> <chr> <chr>
#> 1 MELIDOS_IZTECH_S001 1 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 2 MELIDOS_IZTECH_S001 2 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 3 MELIDOS_IZTECH_S001 3 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 4 MELIDOS_IZTECH_S001 4 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 5 MELIDOS_IZTECH_S001 5 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 6 MELIDOS_IZTECH_S001 6 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 7 MELIDOS_IZTECH_S001 7 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 8 MELIDOS_IZTECH_S001 8 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 9 MELIDOS_IZTECH_S001 9 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 10 MELIDOS_IZTECH_S001 10 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 11 MELIDOS_IZTECH_S001 11 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 12 MELIDOS_IZTECH_S001 12 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 13 MELIDOS_IZTECH_S001 13 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 14 MELIDOS_IZTECH_S001 14 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 15 MELIDOS_IZTECH_S001 15 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 16 MELIDOS_IZTECH_S001 16 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 17 MELIDOS_IZTECH_S001 17 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 18 MELIDOS_IZTECH_S001 18 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 19 MELIDOS_IZTECH_S001 19 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> # ℹ 24 more variables: declared_path <chr>, format <chr>, encoding <chr>,
#> # timezone <chr>, description <chr>, instructions <chr>, role <chr>,
#> # data_state <chr>, modalities <list>, modality_other <chr>,
#> # modality_other_type <chr>, device_id <chr>, device_location <chr>,
#> # device_location_type <chr>, temporal_type <chr>, temporal_value <dbl>,
#> # temporal_unit <chr>, header_row <int>, preprocessing <list>, storage <chr>,
#> # expected_bytes <dbl>, lfs_oid <chr>, blob_sha <chr>, available <lgl>
glc_files(
iztech,
# dataset_id = iztech_dataset,
modality = "light",
available = TRUE
) |>
dplyr::filter(device_location == "eye level")
#> # A tibble: 18 × 30
#> dataset_id file_group file_group_id participant_id study_id path
#> <chr> <int> <chr> <chr> <chr> <chr>
#> 1 MELIDOS_IZTECH_S001 18 MELIDOS_IZTECH_… IZTECH_S001 MELIDOS… data…
#> 2 MELIDOS_IZTECH_S002 18 MELIDOS_IZTECH_… IZTECH_S002 MELIDOS… data…
#> 3 MELIDOS_IZTECH_S003 18 MELIDOS_IZTECH_… IZTECH_S003 MELIDOS… data…
#> 4 MELIDOS_IZTECH_S004 19 MELIDOS_IZTECH_… IZTECH_S004 MELIDOS… data…
#> 5 MELIDOS_IZTECH_S004 20 MELIDOS_IZTECH_… IZTECH_S004 MELIDOS… data…
#> 6 MELIDOS_IZTECH_S005 18 MELIDOS_IZTECH_… IZTECH_S005 MELIDOS… data…
#> 7 MELIDOS_IZTECH_S006 18 MELIDOS_IZTECH_… IZTECH_S006 MELIDOS… data…
#> 8 MELIDOS_IZTECH_S007 17 MELIDOS_IZTECH_… IZTECH_S007 MELIDOS… data…
#> 9 MELIDOS_IZTECH_S008 18 MELIDOS_IZTECH_… IZTECH_S008 MELIDOS… data…
#> 10 MELIDOS_IZTECH_S009 18 MELIDOS_IZTECH_… IZTECH_S009 MELIDOS… data…
#> 11 MELIDOS_IZTECH_S010 18 MELIDOS_IZTECH_… IZTECH_S010 MELIDOS… data…
#> 12 MELIDOS_IZTECH_S011 18 MELIDOS_IZTECH_… IZTECH_S011 MELIDOS… data…
#> 13 MELIDOS_IZTECH_S012 18 MELIDOS_IZTECH_… IZTECH_S012 MELIDOS… data…
#> 14 MELIDOS_IZTECH_S013 18 MELIDOS_IZTECH_… IZTECH_S013 MELIDOS… data…
#> 15 MELIDOS_IZTECH_S014 18 MELIDOS_IZTECH_… IZTECH_S014 MELIDOS… data…
#> 16 MELIDOS_IZTECH_S015 17 MELIDOS_IZTECH_… IZTECH_S015 MELIDOS… data…
#> 17 MELIDOS_IZTECH_S016 18 MELIDOS_IZTECH_… IZTECH_S016 MELIDOS… data…
#> 18 MELIDOS_IZTECH_S017 18 MELIDOS_IZTECH_… IZTECH_S017 MELIDOS… data…
#> # ℹ 24 more variables: declared_path <chr>, format <chr>, encoding <chr>,
#> # timezone <chr>, description <chr>, instructions <chr>, role <chr>,
#> # data_state <chr>, modalities <list>, modality_other <chr>,
#> # modality_other_type <chr>, device_id <chr>, device_location <chr>,
#> # device_location_type <chr>, temporal_type <chr>, temporal_value <dbl>,
#> # temporal_unit <chr>, header_row <int>, preprocessing <list>, storage <chr>,
#> # expected_bytes <dbl>, lfs_oid <chr>, blob_sha <chr>, available <lgl>File inventories expose both declared and resolved paths, format, encoding, time zone, role, data state, device, storage type, expected size, and availability. Git LFS-backed files are identified without requiring a local Git LFS installation.
Variable inventories can be narrowed by dataset, file group, semantic term, or primary status:
demographic_variables <- glc_variables(
iztech,
file_group = iztech_demographics
)
demographic_variables[, c(
"name", "type", "factor_values", "primary"
)]
#> # A tibble: 8 × 4
#> name type factor_values primary
#> <chr> <chr> <list> <lgl>
#> 1 Id string <chr [0]> FALSE
#> 2 age numeric <chr [0]> FALSE
#> 3 sex factor <chr [4]> FALSE
#> 4 gender factor <chr [5]> FALSE
#> 5 native_language boolean <chr [0]> FALSE
#> 6 language_specification factor <chr [3]> FALSE
#> 7 employment_status factor <chr [6]> FALSE
#> 8 comments boolean <chr [0]> FALSE
glc_variables(
iztech,
file_group = iztech_chest_light,
primary = TRUE
)
#> # A tibble: 1 × 15
#> dataset_id file_group file_group_id name label description unit type term
#> <chr> <int> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 MELIDOS_IZ… 17 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> # ℹ 6 more variables: term_name <chr>, calibration <chr>, primary <lgl>,
#> # factor_values <list>, factor_labels <list>, factor_descriptions <list>
glc_variables(iztech, term = "melanopic_edi")
#> # A tibble: 52 × 15
#> dataset_id file_group file_group_id name label description unit type term
#> <chr> <int> <chr> <chr> <chr> <chr> <chr> <chr> <chr>
#> 1 MELIDOS_I… 17 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 2 MELIDOS_I… 18 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 3 MELIDOS_I… 19 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 4 MELIDOS_I… 17 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 5 MELIDOS_I… 18 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 6 MELIDOS_I… 19 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 7 MELIDOS_I… 17 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 8 MELIDOS_I… 18 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 9 MELIDOS_I… 19 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> 10 MELIDOS_I… 18 MELIDOS_IZTE… MEDI Mela… NA lx nume… mela…
#> # ℹ 42 more rows
#> # ℹ 6 more variables: term_name <chr>, calibration <chr>, primary <lgl>,
#> # factor_values <list>, factor_labels <list>, factor_descriptions <list>The type and factor_values columns are not
merely descriptive: glc_read() uses them to construct the
corresponding R columns and factor levels in schema-declared order. Use
source variable names with its variables argument and
semantic terms with its terms argument.
Load and search metadata
With no resources argument, glc_metadata()
loads the core resources that the package declares. Requesting resources
explicitly is often faster and makes dependencies clearer.
metadata <- glc_metadata(
iztech,
resources = c("study", "participants")
)
names(metadata)
#> [1] "study" "participants"
metadata$study
#> # A tibble: 1 × 15
#> schema_version study_internal_id study_title study_preregistration
#> <chr> <chr> <chr> <chr>
#> 1 3.0.2 MELIDOS_IZTECH_2025 Personal light expos… The study was not pr…
#> # ℹ 11 more variables: study_ethics <chr>, study_short_description <chr>,
#> # study_sample <chr>, study_groups <list>, study_setting <chr>,
#> # study_geographical_location <chr>, study_contributors <list>,
#> # study_datasets <list>, study_type <chr>, study_funding_sources <list>,
#> # study_keywords <list>
metadata$participants
#> # A tibble: 17 × 4
#> participant_internal_id participant_age participant_sex participant_gender
#> <chr> <dbl> <chr> <chr>
#> 1 IZTECH_S001 27 Female Woman
#> 2 IZTECH_S002 24 Female Woman
#> 3 IZTECH_S003 23 Female Woman
#> 4 IZTECH_S004 25 Female Woman
#> 5 IZTECH_S005 25 Female Woman
#> 6 IZTECH_S006 29 Male Man
#> 7 IZTECH_S007 23 Male Man
#> 8 IZTECH_S008 23 Female Woman
#> 9 IZTECH_S009 32 Female Woman
#> 10 IZTECH_S010 26 Female Woman
#> 11 IZTECH_S011 22 Male Man
#> 12 IZTECH_S012 24 Male Man
#> 13 IZTECH_S013 23 Female Woman
#> 14 IZTECH_S014 21 Male Man
#> 15 IZTECH_S015 27 Female Woman
#> 16 IZTECH_S016 24 Male Man
#> 17 IZTECH_S017 21 Female WomanJSON objects remain lists, tabular resources become tibbles, and directory resources become named lists keyed by package-relative path.
Search traverses nested metadata and reports the resource, record, complete field path, value, and context for each match:
glc_search_metadata(iztech, "light exposure")
#> # A tibble: 153 × 5
#> resource record field value context
#> <chr> <int> <chr> <chr> <chr>
#> 1 study 1 study_title Pers… record…
#> 2 study 1 study_keywords ligh… record…
#> 3 datasets 1 dataset_variable_terms.label Ligh… record…
#> 4 datasets 1 dataset_file.dataset_file_variables.dataset_fi… Wear… record…
#> 5 datasets 1 dataset_file.dataset_file_variables.dataset_fi… It i… record…
#> 6 datasets 1 dataset_file.dataset_file_variables.dataset_fi… At t… record…
#> 7 datasets 1 dataset_file.dataset_file_instructions Comp… record…
#> 8 datasets 1 dataset_file.dataset_file_instrument.instrumen… Ligh… record…
#> 9 datasets 1 dataset_file.dataset_file_variables.dataset_fi… Addi… record…
#> 10 datasets 1 dataset_file.dataset_file_variables.dataset_fi… How … record…
#> # ℹ 143 more rows
glc_search_metadata(
iztech,
"age",
resources = "participants",
search_in = "fields"
)
#> # A tibble: 17 × 5
#> resource record field value context
#> <chr> <int> <chr> <chr> <chr>
#> 1 participants 1 participant_age 27 record 1
#> 2 participants 2 participant_age 24 record 2
#> 3 participants 3 participant_age 23 record 3
#> 4 participants 4 participant_age 25 record 4
#> 5 participants 5 participant_age 25 record 5
#> 6 participants 6 participant_age 29 record 6
#> 7 participants 7 participant_age 23 record 7
#> 8 participants 8 participant_age 23 record 8
#> 9 participants 9 participant_age 32 record 9
#> 10 participants 10 participant_age 26 record 10
#> 11 participants 11 participant_age 22 record 11
#> 12 participants 12 participant_age 24 record 12
#> 13 participants 13 participant_age 23 record 13
#> 14 participants 14 participant_age 21 record 14
#> 15 participants 15 participant_age 27 record 15
#> 16 participants 16 participant_age 24 record 16
#> 17 participants 17 participant_age 21 record 17
glc_search_metadata(
iztech,
"meq_type",
resources = "participant_characteristics"
)
#> # A tibble: 34 × 5
#> resource record field value context
#> <chr> <int> <chr> <chr> <chr>
#> 1 participant_characteristics 2 participant_characteristic_… meq_… record…
#> 2 participant_characteristics 2 participant_characteristic_… Deri… record…
#> 3 participant_characteristics 25 participant_characteristic_… meq_… record…
#> 4 participant_characteristics 25 participant_characteristic_… Deri… record…
#> 5 participant_characteristics 48 participant_characteristic_… meq_… record…
#> 6 participant_characteristics 48 participant_characteristic_… Deri… record…
#> 7 participant_characteristics 71 participant_characteristic_… meq_… record…
#> 8 participant_characteristics 71 participant_characteristic_… Deri… record…
#> 9 participant_characteristics 94 participant_characteristic_… meq_… record…
#> 10 participant_characteristics 94 participant_characteristic_… Deri… record…
#> # ℹ 24 more rows
glc_search_metadata(
iztech,
"Izmir",
resources = "study",
fields = "study_geographical_location"
)
#> # A tibble: 1 × 5
#> resource record field value context
#> <chr> <int> <chr> <chr> <chr>
#> 1 study 1 study_geographical_location Izmir-Türkiye, city record 1Work with local packages
Local packages use the same public interface, which makes them useful for development, validation follow-up, and offline analysis:
iztech_local <- glc_open("path/to/iztech-subset", quiet = TRUE)
glc_summary(iztech_local)
glc_files(iztech_local, available = FALSE)The directory must contain a datapackage.json descriptor
and all paths needed by the selected operation. A subset created by
glc_download() can be reopened in exactly the same way.
After selecting and collecting compatible light data, use the LightLogR function reference for downstream quality checks, summaries, metrics, and visualizations.