Package: splitGraph 0.4.0

splitGraph: Dataset Dependency Graphs for Leakage-Aware Evaluation

Represent biomedical dataset structure as typed dependency graphs so that sample provenance, repeated-measure structure, study design, batch effects, and temporal relationships are explicit and inspectable. Validates dataset structure, detects sample-level overlap, derives deterministic split constraints, and produces a tool-agnostic split specification for leakage-aware evaluation workflows.

Authors:Selcuk Korkmaz [aut, cre]

splitGraph_0.4.0.tar.gz
splitGraph_0.4.0.zip(r-4.7-any)splitGraph_0.4.0.zip(r-4.6-any)splitGraph_0.4.0.zip(r-4.5-any)
splitGraph_0.4.0.tgz(r-4.6-any)splitGraph_0.4.0.tgz(r-4.5-any)
splitGraph_0.4.0.tar.gz(r-4.7-any)splitGraph_0.4.0.tar.gz(r-4.6-any)
splitGraph_0.4.0.tgz(r-4.6-emscripten)
manual.pdf |manual.html✨
DESCRIPTION |NEWS
card.svg |card.png
splitGraph/json (API)

# Install 'splitGraph' in R:
install.packages('splitGraph', repos = c('https://selcukorkmaz.r-universe.dev', 'https://cloud.r-project.org'))

Bug tracker:https://github.com/selcukorkmaz/splitgraph/issues

On CRAN:

Conda:

5.50 score 1 stars 13 scripts 541 downloads 42 exports 11 dependencies

Last updated from:c12682e3ee. Checks:7 ERROR, 2 OK. Indexed: yes.

TargetResultTimeFilesSyslog
linux-develERROR163
source / vignettesOK217
linux-releaseERROR208
macos-releaseERROR119
macos-oldrelERROR139
windows-develERROR113
windows-releaseERROR114
windows-oldrelERROR112
wasm-releaseOK107

Exports:add_edgesas_igraphas_split_specbuild_dependency_graphcombine_graphscreate_edgescreate_nodesdependency_graphdepgraph_validation_reportderive_split_constraintsdetect_dependency_componentsdetect_shared_dependenciesexport_graphgraph_edge_setgraph_from_metadatagraph_node_setgraph_query_resultgrouping_vectoringest_metadataleakage_risk_summarymigrate_dependency_graph_jsonmigrate_split_spec_jsonquery_edge_typequery_neighborsquery_node_typequery_pathsquery_shortest_pathsread_dependency_graphread_split_specrelatedness_edges_from_kinshipspatial_edges_from_coordssplit_constraintsplit_specsplit_spec_validationsubset_graphsummarize_leakage_risksvalidate_graphvalidate_graph_jsonvalidate_split_specvalidate_split_spec_jsonwrite_dependency_graphwrite_split_spec

Dependencies:clicpp11glueigraphlatticelifecyclemagrittrMatrixpkgconfigrlangvctrs

Adapter cookbook: from split_spec to native resamples
What this vignette is for | Build a split_spec to work with | Adapter 1 — base R: leave-one-group-out folds | Honoring block variables | Honoring the stratum annotation | Adapter 2 — rsample::group_vfold_cv() | Adapter 3 — rsample::rolling_origin() | Two things to check before trusting an ordered adapter | Going across language boundaries via JSON | Letting the spec pick the adapter | When you need a custom adapter

Last update: 2026-09-18
Started: 2026-04-29

Case study: a real multi-donor, multi-cell-type cohort (GEO GSE60424)
The data | Build the graph | What validation says | How much would a naive split leak? | Derive constraints | Composite grouping and over-merging | The split_spec | Working with a subset | Handing off

Last update: 2026-09-18
Started: 2026-09-18

Cross-language handoff: R to JSON to Python to scikit-learn
Derive and serialize in R | What is actually on disk | Read in Python | Versions are part of the contract | Verify the round-trip | Drive scikit-learn | Why this matters

Last update: 2026-09-18
Started: 2026-07-02

FAQ and design notes
Why not just call make_split_plan(group = , batch = ) directly? | When does composite-strict over-merge? | How do thresholds interact with transitive closure? | What does the stratum column mean, and does splitGraph stratify? | Schema versioning policy, in one place | Can I build a graph straight from a SummarizedExperiment? | Which errors can I catch programmatically? | How large a cohort can splitGraph handle?

Last update: 2026-09-18
Started: 2026-09-18

Modeling site, platform, relatedness, and spatial structure
Cluster-style relations: site, region, platform, assay | Watch for a composite that collapses | Pairwise relation: genetic relatedness | Pairwise relation: spatial proximity | Deriving on a subset is leakage-safe | Combining a pairwise relation with a direct one | Thresholds are inputs, not modeling

Last update: 2026-09-18
Started: 2026-07-02

Quick start: from a metadata table to a split_spec in ten minutes
1. A metadata table | 2. Build and validate | 3. Choose a constraint mode | 4. Emit the split_spec | 5. See which leakage paths the choice closes | 6. Hand off | Where to go next

Last update: 2026-09-18
Started: 2026-09-18

splitGraph: From Metadata to Leakage-Aware Split Design
Why splitGraph exists | A realistic toy dataset | Fast path: graph_from_metadata() | Ingest metadata and build typed nodes and edges | Assemble the dependency graph | Visualize the typed structure | Reshaping a graph you already have | Exporting for other tools | Validate before you split | When you really do need to relax a check | Query the graph to inspect hidden structure | Derive split constraints from the graph | Batch constraints | Time constraints | Composite constraints | Cluster-style relations: site, region, platform, assay | Site | Region | Platform and assay | Pairwise relations: relatedness and spatial proximity | Time ordering can come from precedence edges alone | Translate the constraint into a split specification | Summarize the leakage picture in one object | Downstream handoff | Persisting the handoff | Case studies | Case study 1: repeated subjects in a longitudinal cohort | Case study 2: a subject reused across studies | Case study 3: partially observed technical metadata | Case study 4: choosing a defensible split strategy | When splitGraph is useful | What splitGraph is not for | Takeaway

Last update: 2026-09-18
Started: 2026-03-16

Readme and manuals

Help Manual

Help pageTopics
Translate splitGraph Constraints into Stable Split Specificationsas_split_spec summarize_leakage_risks validate_split_spec
Assemble and Validate Dependency Graphsas_igraph build_dependency_graph validate_graph
Create Canonical Node and Edge Tablescreate_edges create_nodes
Validation Report Object for splitGraph Graphsdepgraph_validation_report leakage_risk_summary split_spec split_spec_validation
Derive Split Constraints from Dependency Graphsderive_split_constraints grouping_vector
Export a Dependency Graph for Other Toolsexport_graph
Edit Dependency Graphsadd_edges combine_graphs graph_edit subset_graph
Build a Dependency Graph Directly from a Metadata Tablegraph_from_metadata graph_from_metadata.data.frame graph_from_metadata.default graph_from_metadata.SummarizedExperiment
Construct Core splitGraph S3 Objectsdependency_graph graph_edge_set graph_node_set graph_query_result split_constraint
Standardize Sample Metadataingest_metadata
Upgrade Serialized splitGraph JSON to the Current Schema Versionmigrate_dependency_graph_json migrate_json migrate_split_spec_json
Build Pairwise Leakage Edges from Continuous Similaritypairwise_edges relatedness_edges_from_kinship spatial_edges_from_coords
Plot a Dependency Graphplot.dependency_graph
Query Dependency Graph Structuredetect_dependency_components detect_shared_dependencies query_edge_type query_neighbors query_node_type query_paths query_shortest_paths
Classed Conditions Signalled by splitGraphsplitgraph_conditions
Validate Serialized splitGraph JSON Against the Shipped Schemavalidate_graph_json validate_json validate_split_spec_json
Serialize a Dependency Graph to JSONread_dependency_graph write_dependency_graph
Serialize a Split Specification to JSONread_split_spec write_split_spec