{
  "_id": "6acba437fe5cc25786e91a4c",
  "Package": "SOMevidence",
  "Title": "Evidence Workflows for Self-Organizing Map Classification",
  "Version": "1.2.0",
  "Authors@R": "person(\"Shaowen\", \"Ye\", role = c(\"aut\", \"cre\"),\nemail = \"yeshaowen2119@gmail.com\")",
  "Description": "Provides explicit data-design objects, leakage-safe\npreprocessing, design-aware resampling, reproducible ensembles\nof self-organizing maps, and evidence-oriented diagnostics for\necological, environmental and evolutionary applications. The\npackage separates continuous-representation diagnostics from\nthe defensibility of a hard partition and supports explicit\nabstention when evidence is insufficient. Self-organizing maps\nfollow Kohonen (1982) <doi:10.1007/BF00337288>, using the\n'kohonen' implementation described by Wehrens and Kruisselbrink\n(2018) <doi:10.18637/jss.v087.i07>.",
  "License": "GPL (>= 3)",
  "URL": "https://shaowen-ye.github.io/SOMevidence/,\nhttps://shaowen-ye.r-universe.dev/SOMevidence,\nhttps://github.com/shaowen-ye/SOMevidence",
  "BugReports": "https://github.com/shaowen-ye/SOMevidence/issues",
  "Encoding": "UTF-8",
  "Roxygen": "list(markdown = TRUE)",
  "Config/testthat/edition": "3",
  "Config/Needs/coverage": "covr",
  "Config/Needs/documentation": "roxygen2",
  "Config/Needs/lint": "lintr",
  "Config/Needs/validation": "jsonlite, pkgload, renv",
  "Config/Needs/website": "pkgdown",
  "VignetteBuilder": "knitr, rmarkdown",
  "Config/roxygen2/version": "8.1.0",
  "Repository": "https://shaowen-ye.r-universe.dev",
  "Date/Publication": "2026-08-11 14:11:37 UTC",
  "RemoteUrl": "https://github.com/shaowen-ye/SOMevidence",
  "RemoteRef": "v1.2.0",
  "RemoteSha": "dfc9330d33689c020bc6e195b06d7d8632389c23",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-11 14:54:23 UTC",
    "User": "root"
  },
  "Author": "Shaowen Ye [aut, cre]",
  "Maintainer": "Shaowen Ye <yeshaowen2119@gmail.com>",
  "_user": "shaowen-ye",
  "_type": "src",
  "_file": "SOMevidence_1.2.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/56a4d3b7d2a05f8d4caf91be00ea00cd21e18c7aec165edfe7fc19bc493d2077",
  "_filesize": 1229048,
  "_sha256": "56a4d3b7d2a05f8d4caf91be00ea00cd21e18c7aec165edfe7fc19bc493d2077",
  "_expires": "2027-01-19T14:59:01.000Z",
  "_created": "2026-10-11T14:54:23.000Z",
  "_published": "2026-10-11T14:59:03.636Z",
  "_buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 114498576563,
      "time": 146,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11705721411"
    },
    {
      "job": 114498576470,
      "time": 168,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11706200977"
    },
    {
      "job": 114498576535,
      "time": 229,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11706126217"
    },
    {
      "job": 114498576560,
      "time": 206,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11706071193"
    },
    {
      "job": 114497958676,
      "time": 183,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11705801178"
    },
    {
      "job": 114498576544,
      "time": 100,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11705526851"
    },
    {
      "job": 114498576538,
      "time": 120,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11706466492"
    },
    {
      "job": 114498576537,
      "time": 108,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11705721363"
    },
    {
      "job": 114498576511,
      "time": 119,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11705836351"
    }
  ],
  "_upstream": "https://github.com/shaowen-ye/SOMevidence",
  "_commit": {
    "id": "dfc9330d33689c020bc6e195b06d7d8632389c23",
    "author": "Shaowen Ye <76806529+shaowen-ye@users.noreply.github.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Merge pull request #7 from shaowen-ye/feature/v1.2-core\n\nSOMevidence 1.2.0: identity-safe evidence and representation contracts",
    "time": 1786457497
  },
  "_maintainer": {
    "name": "Shaowen Ye",
    "email": "yeshaowen2119@gmail.com",
    "login": "yeshaowen2119-cmd",
    "description": "",
    "uuid": 259468658
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 4.2.0",
      "role": "Depends"
    },
    {
      "package": "clue",
      "role": "Imports"
    },
    {
      "package": "kohonen",
      "role": "Imports"
    },
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "withr",
      "version": ">= 2.5.0",
      "role": "Imports"
    },
    {
      "package": "future",
      "role": "Suggests"
    },
    {
      "package": "future.apply",
      "role": "Suggests"
    },
    {
      "package": "ggplot2",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "mclust",
      "role": "Suggests"
    },
    {
      "package": "palmerpenguins",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "shiny",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "yaml",
      "role": "Suggests"
    }
  ],
  "_owner": "shaowen-ye",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-33",
      "n": 12
    }
  ],
  "_tags": [
    {
      "name": "v1.0.0",
      "date": "2026-08-10"
    },
    {
      "name": "v1.0.1",
      "date": "2026-08-10"
    },
    {
      "name": "v1.1.0",
      "date": "2026-08-11"
    },
    {
      "name": "v1.1.1",
      "date": "2026-08-11"
    },
    {
      "name": "v1.1.2",
      "date": "2026-08-11"
    },
    {
      "name": "v1.1.3",
      "date": "2026-08-11"
    },
    {
      "name": "v1.2.0",
      "date": "2026-08-11"
    },
    {
      "name": "v1.2.1",
      "date": "2026-08-12"
    }
  ],
  "_topics": [
    "clustering",
    "ecology",
    "environmental-monitoring",
    "reproducible-research",
    "self-organizing-map"
  ],
  "_stars": 1,
  "_contributors": [
    {
      "user": "shaowen-ye",
      "count": 30,
      "uuid": 76806529
    }
  ],
  "_userbio": {
    "uuid": 76806529,
    "type": "user",
    "name": "Shaowen Ye",
    "followers": 11,
    "description": "生态学研究者｜AI 辅助科研工作流｜科研工具开发  \r\n\r\nEcology researcher | AI-assisted research workflows | Scientific tools"
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/SOMevidence"
  },
  "_devurl": "https://github.com/shaowen-ye/somevidence",
  "_pkgdown": "https://shaowen-ye.github.io/SOMevidence/",
  "_searchresults": 0,
  "_rbuild": "4.6.1",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/manual.pdf",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/readme.html",
    "extra/readme.md",
    "extra/SOMevidence.html"
  ],
  "_cranurl": false,
  "_exports": [
    "assess_defensibility",
    "audit_som",
    "audit_som_representation",
    "audit_transfer",
    "compare_cross_models",
    "consensus_som",
    "evaluate_external_labels",
    "expand_som_spec",
    "fit_cross_models",
    "fit_som_ensemble",
    "launch_som_app",
    "map_som_ensemble",
    "open_data_registry",
    "pareto_candidates",
    "partition_som",
    "plot_som_plane",
    "run_som_sensitivity",
    "run_som_workflow",
    "simulate_som_scenario",
    "som_data",
    "som_gate",
    "som_preprocess",
    "som_resamples",
    "som_spec",
    "upgrade_som_object"
  ],
  "_help": [
    {
      "page": "assess_defensibility",
      "title": "Assess partition defensibility without forcing a verdict",
      "topics": [
        "assess_defensibility"
      ]
    },
    {
      "page": "audit_som",
      "title": "Audit representation quality across a SOM ensemble",
      "topics": [
        "audit_som"
      ]
    },
    {
      "page": "audit_som_representation",
      "title": "Audit reproducibility of continuous SOM representations",
      "topics": [
        "audit_som_representation"
      ]
    },
    {
      "page": "audit_transfer",
      "title": "Audit transfer to held-out sampling domains",
      "topics": [
        "audit_transfer"
      ]
    },
    {
      "page": "compare_cross_models",
      "title": "Compare SOM partitions with controlled cross-model references",
      "topics": [
        "compare_cross_models"
      ]
    },
    {
      "page": "consensus_som",
      "title": "Construct a sample-level consensus partition",
      "topics": [
        "consensus_som"
      ]
    },
    {
      "page": "evaluate_external_labels",
      "title": "Compare a consensus partition with external ecological labels",
      "topics": [
        "evaluate_external_labels"
      ]
    },
    {
      "page": "expand_som_spec",
      "title": "Expand an ensemble specification into its model budget",
      "topics": [
        "expand_som_spec"
      ]
    },
    {
      "page": "fit_cross_models",
      "title": "Fit controlled cross-model reference partitions",
      "topics": [
        "fit_cross_models"
      ]
    },
    {
      "page": "fit_som_ensemble",
      "title": "Fit a reproducible ensemble of self-organizing maps",
      "topics": [
        "fit_som_ensemble"
      ]
    },
    {
      "page": "launch_som_app",
      "title": "Launch the optional reproducible SOM interface",
      "topics": [
        "launch_som_app"
      ]
    },
    {
      "page": "map_som_ensemble",
      "title": "Map new observations through a fitted SOM ensemble",
      "topics": [
        "map_som_ensemble"
      ]
    },
    {
      "page": "open_data_registry",
      "title": "List governed tutorial and candidate open-data sources",
      "topics": [
        "open_data_registry"
      ]
    },
    {
      "page": "pareto_candidates",
      "title": "Identify Pareto-efficient SOM candidates",
      "topics": [
        "pareto_candidates"
      ]
    },
    {
      "page": "partition_som",
      "title": "Form and compare candidate hard partitions of SOM units",
      "topics": [
        "partition_som"
      ]
    },
    {
      "page": "plot_som_plane",
      "title": "Plot an interpretable plane from one SOM ensemble member",
      "topics": [
        "plot_som_plane"
      ]
    },
    {
      "page": "plot.som_audit",
      "title": "Plot SOM audit trade-offs",
      "topics": [
        "plot.som_audit"
      ]
    },
    {
      "page": "plot.som_consensus",
      "title": "Plot sample-level consensus evidence",
      "topics": [
        "plot.som_consensus"
      ]
    },
    {
      "page": "plot.som_cross_comparison",
      "title": "Plot cross-model agreement without ranking methods",
      "topics": [
        "plot.som_cross_comparison"
      ]
    },
    {
      "page": "plot.som_newdata_mapping",
      "title": "Plot new-data mapping shift across an ensemble",
      "topics": [
        "plot.som_newdata_mapping"
      ]
    },
    {
      "page": "plot.som_partitions",
      "title": "Plot partition reproducibility across candidate class counts",
      "topics": [
        "plot.som_partitions"
      ]
    },
    {
      "page": "plot.som_sensitivity",
      "title": "Plot sample-level sensitivity across prespecified scenarios",
      "topics": [
        "plot.som_sensitivity"
      ]
    },
    {
      "page": "plot.som_transfer_audit",
      "title": "Plot mapping shift in held-out domains",
      "topics": [
        "plot.som_transfer_audit"
      ]
    },
    {
      "page": "run_som_sensitivity",
      "title": "Run prespecified SOM sensitivity scenarios",
      "topics": [
        "run_som_sensitivity"
      ]
    },
    {
      "page": "run_som_workflow",
      "title": "Run a complete SOM defensibility workflow",
      "topics": [
        "run_som_workflow"
      ]
    },
    {
      "page": "simulate_som_scenario",
      "title": "Simulate known-structure data for SOM validation",
      "topics": [
        "simulate_som_scenario"
      ]
    },
    {
      "page": "som_data",
      "title": "Construct a design-explicit SOM data object",
      "topics": [
        "som_data"
      ]
    },
    {
      "page": "som_gate",
      "title": "Define explicit evidence gates for a hard SOM partition",
      "topics": [
        "som_gate"
      ]
    },
    {
      "page": "som_preprocess",
      "title": "Define leakage-safe SOM preprocessing",
      "topics": [
        "som_preprocess"
      ]
    },
    {
      "page": "som_resamples",
      "title": "Construct design-aware resamples",
      "topics": [
        "som_resamples"
      ]
    },
    {
      "page": "som_spec",
      "title": "Specify a reproducible SOM ensemble",
      "topics": [
        "som_spec"
      ]
    },
    {
      "page": "summary.som_workflow",
      "title": "Summarize workflow quality assurance and model outcomes",
      "topics": [
        "summary.som_workflow"
      ]
    },
    {
      "page": "upgrade_som_object",
      "title": "Upgrade a persisted SOMevidence object contract",
      "topics": [
        "upgrade_som_object"
      ]
    }
  ],
  "_readme": "https://github.com/shaowen-ye/SOMevidence/raw/v1.2.0/README.md",
  "_rundeps": [
    "clue",
    "cluster",
    "kohonen",
    "Rcpp",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "palmer-penguins.Rmd",
      "filename": "palmer-penguins.html",
      "title": "A real-data audit of Palmer penguin morphology",
      "author": "Shaowen Ye",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Purpose and inferential boundary",
        "Build a design-explicit data object",
        "Prespecify the transfer design and ensemble budget",
        "Fit once and retain separate evidence streams",
        "Inspect external labels only after consensus",
        "Reproducibility record"
      ],
      "created": "2026-08-11 02:09:44",
      "modified": "2026-08-11 14:11:37",
      "commits": 2
    },
    {
      "source": "api-lifecycle.Rmd",
      "filename": "api-lifecycle.html",
      "title": "API lifecycle and reproducibility contracts",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Why the package has contracts",
        "What changed in the 1.2.0 contract",
        "What changed in the 1.1.0 contract",
        "Stable and experimental interfaces",
        "Object boundaries are scientific boundaries",
        "Reporting an analysis"
      ],
      "created": "2026-08-10 17:09:21",
      "modified": "2026-08-11 14:11:37",
      "commits": 4
    },
    {
      "source": "getting-started.Rmd",
      "filename": "getting-started.html",
      "title": "Auditing a SOM ensemble without forcing classes",
      "author": "Shaowen Ye",
      "engine": "knitr::rmarkdown",
      "headings": [
        "The question comes before the class map",
        "Preserve the sampling design",
        "Audit representation and partitions separately",
        "A conclusion may be withheld",
        "Governed real-data examples",
        "Compare prespecified analysis choices on shared samples"
      ],
      "created": "2026-08-10 17:09:21",
      "modified": "2026-08-11 14:11:37",
      "commits": 3
    },
    {
      "source": "design-aware-resampling.Rmd",
      "filename": "design-aware-resampling.html",
      "title": "Respecting groups and monitoring domains in SOM validation",
      "author": "Shaowen Ye",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Why the resampling unit matters",
        "Mapping to a held-out monitoring domain",
        "Map a later monitoring batch without refitting",
        "Predefined temporal or spatial blocks"
      ],
      "created": "2026-08-10 17:09:21",
      "modified": "2026-08-10 17:09:21",
      "commits": 1
    },
    {
      "source": "visualizing-evidence.Rmd",
      "filename": "visualizing-evidence.html",
      "title": "Visualizing SOM structure and uncertainty",
      "author": "Shaowen Ye",
      "engine": "knitr::rmarkdown",
      "headings": [
        "A map is one member of an ensemble",
        "Ensemble evidence belongs beside the map"
      ],
      "created": "2026-08-10 17:09:21",
      "modified": "2026-08-11 09:41:16",
      "commits": 2
    }
  ],
  "_score": 3.3979400086720375,
  "_indexed": true,
  "_nocasepkg": "somevidence",
  "_universes": [
    "shaowen-ye",
    "yeshaowen2119-cmd"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.2.0",
      "date": "2026-10-11T14:56:24.000Z",
      "distro": "resolute",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/4e2a2efd52c6c9b03b44c531cf65eb4c2a6d36e100c06070f7aaf66480e8f9a4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.2.0",
      "date": "2026-10-11T14:56:45.000Z",
      "distro": "resolute",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/1df3b2ef6ef1cef5a0dfd8286e47e368d9792fd75376176b1345bd95a78538d2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.2.0",
      "date": "2026-10-11T14:57:14.000Z",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/198602dc52b0703d760c40b388c67d50b956f7d69b06ca39be3cf6960108566b",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.2.0",
      "date": "2026-10-11T14:56:59.000Z",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/8b735b737008e8e91a3c802fce5a3e5ada65159d7d05a713ceb766e803802f53",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.2.0",
      "date": "2026-10-11T14:56:23.000Z",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/7c2d63e90c3fd18d58f164e7884e6b31763fc605d38412a18dc7137bf0d3fe5a",
      "status": "success",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.2.0",
      "date": "2026-10-11T14:55:37.000Z",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/cdc059db23e8c9a9c7c8a67e5e4aa1a89cddae0c61818ca3aaab1807783fa688",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.2.0",
      "date": "2026-10-11T14:55:31.000Z",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/416e0ed78796b69d82a719321aeafe27a91ea3a4e3fcb02a95c97cf8dc1dcff2",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.2.0",
      "date": "2026-10-11T14:55:42.000Z",
      "commit": "dfc9330d33689c020bc6e195b06d7d8632389c23",
      "fileid": "https://r2.ropensci.org/05e3252b8d519937a7e83e95c5dce624d0ad1584ef71190d33eea7d0036e8a42",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/shaowen-ye/actions/runs/38148867876"
    }
  ]
}