The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

Cross-Package Interoperability Contracts

Boundary, not duplication

The interoperability layer does not import raw Gazepoint files, process biometric signals, or perform sequence analysis. Those remain upstream responsibilities.

gp3ml_interop_contracts()
#>   source_package
#> 1       gp3tools
#> 2   gpbiometrics
#> 3   gp3sequences
#> 4   study_design
#> 5         custom
#>                                                   upstream_responsibility
#> 1 Gazepoint import, validation, gaze/fixation/AOI/transition preparation.
#> 2               EDA/HR/DIAL/IBI preparation and signal-quality summaries.
#> 3  Ordered-sequence validation, encoding, summaries, motifs, transitions.
#> 4 Experimentally assigned labels and prespecified study-design variables.
#> 5                  Externally prepared observed, non-sensitive variables.
#>                                                                                                  gp3ml_responsibility
#> 1 Role declaration, provenance, leakage-safe splitting/resampling, modelling, evaluation, uncertainty, and reporting.
#> 2 Role declaration, provenance, leakage-safe splitting/resampling, modelling, evaluation, uncertainty, and reporting.
#> 3 Role declaration, provenance, leakage-safe splitting/resampling, modelling, evaluation, uncertainty, and reporting.
#> 4 Role declaration, provenance, leakage-safe splitting/resampling, modelling, evaluation, uncertainty, and reporting.
#> 5 Role declaration, provenance, leakage-safe splitting/resampling, modelling, evaluation, uncertainty, and reporting.
#>   duplicates_upstream_preprocessing
#> 1                             FALSE
#> 2                             FALSE
#> 3                             FALSE
#> 4                             FALSE
#> 5                             FALSE

Prepared handoffs

bundle <- simulate_gazepoint_research_handoffs(
  n_participants = 12L,
  n_stimuli = 3L,
  seed = 3201L
)
bundle
#>  gp3ml research bundle: 3 sources; outcome=assigned_condition; target=new_participants

gaze_validation <- validate_gazepoint_handoff(bundle$handoffs$gp3tools)
gaze_validation
#>  gp3ml handoff validation: pass
#>               check status
#>    supported_source   pass
#>        tabular_data   pass
#>   join_keys_present   pass
#>  join_keys_complete   pass
#>    join_keys_unique   pass
#>  predictors_present   pass
#>     outcome_present   pass
#>   data_hash_matches   pass
#>                                                              detail
#>                                                            gp3tools
#>                                                 36 rows x 8 columns
#>                               participant_id, trial_id, stimulus_id
#>                                         No missing join-key values.
#>                                       Composite join key is unique.
#>  valid_gaze_prop, fixation_count, mean_fixation_ms, gaze_dispersion
#>                                                  assigned_condition
#>                                         Handoff data are unchanged.
plot(gaze_validation)

Combine only after validation

combined <- combine_gazepoint_handoffs(
  bundle$handoffs,
  keys = bundle$keys
)
combined
#>  gp3ml handoff bundle: 3 sources, 36 joined rows
head(as_gp3ml_data(combined))
#>   participant_id trial_id stimulus_id assigned_condition valid_gaze_prop
#> 1           P001   T00001         S01                  A       0.8042958
#> 2           P002   T00002         S01                  B       0.9861274
#> 3           P003   T00003         S01                  A       0.8595829
#> 4           P004   T00004         S01                  B       0.9394516
#> 5           P005   T00005         S01                  A       0.9499491
#> 6           P006   T00006         S01                  B       0.9114933
#>   fixation_count mean_fixation_ms gaze_dispersion eda_valid_prop hr_valid_prop
#> 1              5         249.4945       0.3123735      0.8789096     0.9249897
#> 2              9         249.6495       0.3129274      0.9198267     1.0000000
#> 3              5         262.8509       0.2911562      0.9153236     0.9871083
#> 4              9         269.6437       0.1767864      0.9896786     0.9492468
#> 5              9         258.2238       0.3265558      0.9045170     0.9851544
#> 6              7         231.5134       0.2586631      0.9898708     0.9493813
#>   ibi_valid_prop sequence_length unique_state_count transition_rate
#> 1      0.9235095               6                  2       0.6087000
#> 2      0.8933526              11                  2       0.6243513
#> 3      0.8776888              12                  6       0.5684036
#> 4      0.9722860               9                  3       0.6700565
#> 5      0.9023553               4                  6       0.6221709
#> 6      0.9732340              12                  3       0.5557973

The resulting table is a modelling handoff. It does not imply that gp3ml performed the upstream preprocessing represented by those columns.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.