{
  "_id": "6acb5939fe5cc25786e8e84d",
  "Package": "sgsR",
  "Type": "Package",
  "Version": "1.5.0",
  "License": "GPL (>= 3)",
  "Title": "Structurally Guided Sampling",
  "Authors@R": "c(\nperson(given = \"Tristan RH\",\nfamily = \"Goodbody\",\nemail = \"goodbody.t@gmail.com\",\nrole = c(\"aut\", \"cre\", \"cph\"),\ncomment = c(ORCID = \"0000-0002-6894-7925\")),\nperson(given = \"Nicholas C\",\nfamily = \"Coops\",\nemail = \"nicholas.coops@ubc.ca\",\nrole = \"aut\",\ncomment = c(ORCID = \"0000-0002-0151-9037\")),\nperson(given = \"Martin\",\nfamily = \"Queinnec\",\nrole = \"aut\",\nemail = \"queinnec@mail.ubc.ca\",\ncomment = c(ORCID = \"0000-0002-2741-1032\"))\n)",
  "Description": "Structurally guided sampling (SGS) approaches for airborne\nlaser scanning (ALS; LIDAR). Primary functions provide means to\ngenerate data-driven stratifications & methods for allocating\nsamples. Intermediate functions for calculating and extracting\nimportant information about input covariates and samples are\nalso included. Processing outcomes are intended to help forest\nand environmental management practitioners better optimize\nfield sample placement as well as assess and augment existing\nsample networks in the context of data distributions and\nconditions. ALS data is the primary intended use case, however\nany rasterized remote sensing data can be used, enabling\ndata-driven stratifications and sampling approaches.",
  "URL": "https://github.com/tgoodbody/sgsR,\nhttps://tgoodbody.github.io/sgsR/",
  "BugReports": "https://github.com/tgoodbody/sgsR/issues",
  "VignetteBuilder": "knitr",
  "Config/testthat/edition": "3",
  "Config/testthat/parallel": "true",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.2",
  "Language": "en-US",
  "Config/pak/sysreqs": "libabsl-dev cmake libgdal-dev gdal-bin libgeos-dev\nlibicu-dev libssl-dev libproj-dev libsqlite3-dev\nlibudunits2-dev",
  "Repository": "https://tgoodbody.r-universe.dev",
  "Date/Publication": "2025-06-18 16:59:40 UTC",
  "RemoteUrl": "https://github.com/tgoodbody/sgsr",
  "RemoteRef": "HEAD",
  "RemoteSha": "be8855e75e650f2763294692878a6f6613049532",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-10-11 09:21:58 UTC",
    "User": "root"
  },
  "Author": "Tristan RH Goodbody [aut, cre, cph] (ORCID:\n<https://orcid.org/0000-0002-6894-7925>),\nNicholas C Coops [aut] (ORCID: <https://orcid.org/0000-0002-0151-9037>),\nMartin Queinnec [aut] (ORCID: <https://orcid.org/0000-0002-2741-1032>)",
  "Maintainer": "Tristan RH Goodbody <goodbody.t@gmail.com>",
  "_user": "tgoodbody",
  "_type": "src",
  "_file": "sgsR_1.5.0.tar.gz",
  "_fileid": "https://r2.ropensci.org/e15d69c076bac4232fd2f805bd6c9a1ff06eeaf4bee84f238b8784e9c68140a1",
  "_filesize": 16021115,
  "_sha256": "e15d69c076bac4232fd2f805bd6c9a1ff06eeaf4bee84f238b8784e9c68140a1",
  "_expires": "2027-01-19T09:39:03.000Z",
  "_created": "2026-10-11T09:21:58.000Z",
  "_published": "2026-10-11T09:39:05.625Z",
  "_buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_jobs": [
    {
      "job": 114436674104,
      "time": 207,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11698640287"
    },
    {
      "job": 114436674084,
      "time": 226,
      "config": "linux-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11697119955"
    },
    {
      "job": 114436674061,
      "time": 191,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11698865447"
    },
    {
      "job": 114436674075,
      "time": 181,
      "config": "macos-release-arm64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11698946219"
    },
    {
      "job": 114435894064,
      "time": 265,
      "config": "source",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11698055736"
    },
    {
      "job": 114436674067,
      "time": 132,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "11697839531"
    },
    {
      "job": 114436674038,
      "time": 165,
      "config": "windows-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "11697149662"
    },
    {
      "job": 114436674055,
      "time": 154,
      "config": "windows-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "11697937707"
    },
    {
      "job": 114436674037,
      "time": 146,
      "config": "windows-release-x86_64",
      "r": "4.6.1",
      "check": "OK",
      "artifact": "11697674984"
    }
  ],
  "_upstream": "https://github.com/tgoodbody/sgsr",
  "_commit": {
    "id": "be8855e75e650f2763294692878a6f6613049532",
    "author": "Tristan Goodbody <60200460+tgoodbody@users.noreply.github.com>",
    "committer": "Tristan Goodbody <60200460+tgoodbody@users.noreply.github.com>",
    "message": "v1.5.0\n",
    "time": 1750265980
  },
  "_maintainer": {
    "name": "Tristan RH Goodbody",
    "email": "goodbody.t@gmail.com",
    "login": "tgoodbody",
    "twitter": "@GoodbodyT",
    "description": "",
    "uuid": 60200460,
    "orcid": "0000-0002-6894-7925"
  },
  "_distro": "resolute",
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "methods",
      "role": "Depends"
    },
    {
      "package": "dplyr",
      "role": "Imports"
    },
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "sf",
      "role": "Imports"
    },
    {
      "package": "terra",
      "role": "Imports"
    },
    {
      "package": "tidyr",
      "role": "Imports"
    },
    {
      "package": "clhs",
      "role": "Imports"
    },
    {
      "package": "SamplingBigData",
      "role": "Imports"
    },
    {
      "package": "BalancedSampling",
      "role": "Imports"
    },
    {
      "package": "spatstat.geom",
      "role": "Imports"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "Rfast",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "doParallel",
      "role": "Suggests"
    },
    {
      "package": "doSNOW",
      "role": "Suggests"
    },
    {
      "package": "snow",
      "role": "Suggests"
    },
    {
      "package": "foreach",
      "role": "Suggests"
    },
    {
      "package": "entropy",
      "role": "Suggests"
    },
    {
      "package": "roxygen2",
      "role": "Suggests"
    },
    {
      "package": "covr",
      "role": "Suggests"
    },
    {
      "package": "RANN",
      "role": "Suggests"
    },
    {
      "package": "spelling",
      "role": "Suggests"
    }
  ],
  "_owner": "tgoodbody",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_stars": 54,
  "_contributors": [
    {
      "user": "tgoodbody",
      "count": 566,
      "uuid": 60200460
    },
    {
      "user": "evadchoi",
      "count": 6,
      "uuid": 105460001
    },
    {
      "user": "jean-romain",
      "count": 4,
      "uuid": 3872279
    },
    {
      "user": "spono",
      "count": 4,
      "uuid": 14940295
    },
    {
      "user": "teunbrand",
      "count": 1,
      "uuid": 49372158
    },
    {
      "user": "rhijmans",
      "count": 1,
      "uuid": 11481397
    }
  ],
  "_userbio": {
    "uuid": 60200460,
    "type": "user",
    "name": "Tristan Goodbody",
    "followers": 35
  },
  "_downloads": {
    "count": 348,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/sgsR"
  },
  "_devurl": "https://github.com/tgoodbody/sgsr",
  "_pkgdown": "https://tgoodbody.github.io/sgsR/",
  "_searchresults": 45,
  "_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/sgsR.html"
  ],
  "_homeurl": "https://github.com/tgoodbody/sgsr",
  "_realowner": "tgoodbody",
  "_cranurl": true,
  "_releases": [
    {
      "version": "1.0.0",
      "date": "2022-06-24"
    },
    {
      "version": "1.2.0",
      "date": "2022-08-07"
    },
    {
      "version": "1.3.1",
      "date": "2022-10-14"
    },
    {
      "version": "1.3.2",
      "date": "2022-11-19"
    },
    {
      "version": "1.3.3",
      "date": "2023-01-17"
    },
    {
      "version": "1.3.4",
      "date": "2023-01-28"
    },
    {
      "version": "1.4.0",
      "date": "2023-02-09"
    },
    {
      "version": "1.4.2",
      "date": "2023-03-10"
    },
    {
      "version": "1.4.4",
      "date": "2023-06-13"
    },
    {
      "version": "1.4.5",
      "date": "2024-03-03"
    },
    {
      "version": "1.5.0",
      "date": "2025-06-18"
    }
  ],
  "_exports": [
    "ahels_nSamp",
    "ahels_threshold",
    "allocate_equal",
    "allocate_existing",
    "allocate_existing_equal",
    "allocate_existing_manual",
    "allocate_existing_optim",
    "allocate_existing_prop",
    "allocate_force",
    "allocate_manual",
    "allocate_optim",
    "allocate_prop",
    "calculate_allocation",
    "calculate_coobs",
    "calculate_distance",
    "calculate_lhsOpt",
    "calculate_pcomp",
    "calculate_pop",
    "calculate_representation",
    "calculate_sampsize",
    "classPlot",
    "extract_metrics",
    "extract_strata",
    "mask_access",
    "mask_existing",
    "mat_cov",
    "mat_covNB",
    "mat_quant",
    "plot_scatter",
    "sample_ahels",
    "sample_balanced",
    "sample_clhs",
    "sample_existing",
    "sample_nc",
    "sample_srs",
    "sample_strat",
    "sample_sys_strat",
    "sample_systematic",
    "strat_breaks",
    "strat_kmeans",
    "strat_map",
    "strat_poly",
    "strat_quantiles",
    "strat_rule1",
    "strat_rule2"
  ],
  "_help": [
    {
      "page": "calculate_allocation",
      "title": "Sample allocation type and count",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_allocation"
      ]
    },
    {
      "page": "calculate_coobs",
      "title": "coobs algorithm sampling",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_coobs"
      ]
    },
    {
      "page": "calculate_distance",
      "title": "Distance to access layer",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_distance"
      ]
    },
    {
      "page": "calculate_lhsOpt",
      "title": "Analyze optimal Latin hypercube sample number",
      "concept": [
        "analyze functions"
      ],
      "topics": [
        "calculate_lhsOpt"
      ]
    },
    {
      "page": "calculate_pcomp",
      "title": "Raster principal components",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_pcomp"
      ]
    },
    {
      "page": "calculate_pop",
      "title": "Population descriptors",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_pop"
      ]
    },
    {
      "page": "calculate_representation",
      "title": "Compare sample representation within sraster strata",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_representation"
      ]
    },
    {
      "page": "calculate_sampsize",
      "title": "Sample size determination",
      "concept": [
        "calculate functions"
      ],
      "topics": [
        "calculate_sampsize"
      ]
    },
    {
      "page": "extract_metrics",
      "title": "Extract metrics",
      "concept": [
        "extract functions"
      ],
      "topics": [
        "extract_metrics"
      ]
    },
    {
      "page": "extract_strata",
      "title": "Extract strata",
      "concept": [
        "extract functions"
      ],
      "topics": [
        "extract_strata"
      ]
    },
    {
      "page": "sample_ahels",
      "title": "Adapted Hypercube Evaluation of a Legacy Sample (ahels)",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_ahels"
      ]
    },
    {
      "page": "sample_balanced",
      "title": "Balanced sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_balanced"
      ]
    },
    {
      "page": "sample_clhs",
      "title": "Conditioned Latin Hypercube Sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_clhs"
      ]
    },
    {
      "page": "sample_existing",
      "title": "Sample existing",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_existing"
      ]
    },
    {
      "page": "sample_nc",
      "title": "Nearest centroid (NC) sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_nc"
      ]
    },
    {
      "page": "sample_srs",
      "title": "Simple random sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_srs"
      ]
    },
    {
      "page": "sample_strat",
      "title": "Stratified sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_strat"
      ]
    },
    {
      "page": "sample_sys_strat",
      "title": "Systematic stratified sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_sys_strat"
      ]
    },
    {
      "page": "sample_systematic",
      "title": "Systematic sampling",
      "concept": [
        "sample functions"
      ],
      "topics": [
        "sample_systematic"
      ]
    },
    {
      "page": "strat_breaks",
      "title": "Breaks stratification",
      "concept": [
        "stratify functions"
      ],
      "topics": [
        "strat_breaks"
      ]
    },
    {
      "page": "strat_kmeans",
      "title": "k-means stratification",
      "concept": [
        "stratify functions"
      ],
      "topics": [
        "strat_kmeans"
      ]
    },
    {
      "page": "strat_map",
      "title": "Map a raster stack of a list of rasters",
      "concept": [
        "stratify functions"
      ],
      "topics": [
        "strat_map"
      ]
    },
    {
      "page": "strat_poly",
      "title": "Stratify using polygons",
      "concept": [
        "stratify functions"
      ],
      "topics": [
        "strat_poly"
      ]
    },
    {
      "page": "strat_quantiles",
      "title": "Quantiles stratification",
      "concept": [
        "stratify functions"
      ],
      "topics": [
        "strat_quantiles"
      ]
    }
  ],
  "_pkglogo": "https://github.com/tgoodbody/sgsr/raw/HEAD/man/figures/logo.png",
  "_readme": "https://github.com/tgoodbody/sgsr/raw/HEAD/README.md",
  "_rundeps": [
    "BalancedSampling",
    "class",
    "classInt",
    "clhs",
    "cli",
    "cluster",
    "cpp11",
    "DBI",
    "deldir",
    "dplyr",
    "e1071",
    "farver",
    "generics",
    "ggplot2",
    "glue",
    "gtable",
    "isoband",
    "KernSmooth",
    "labeling",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "pillar",
    "pkgconfig",
    "plyr",
    "polyclip",
    "proxy",
    "purrr",
    "R6",
    "raster",
    "RColorBrewer",
    "Rcpp",
    "RcppArmadillo",
    "reshape2",
    "rlang",
    "s2",
    "S7",
    "SamplingBigData",
    "scales",
    "sf",
    "sp",
    "spatstat.data",
    "spatstat.geom",
    "spatstat.univar",
    "spatstat.utils",
    "stringi",
    "stringr",
    "terra",
    "tibble",
    "tidyr",
    "tidyselect",
    "units",
    "utf8",
    "vctrs",
    "viridisLite",
    "withr",
    "wk"
  ],
  "_vignettes": [
    {
      "source": "calculating.Rmd",
      "filename": "calculating.html",
      "title": "Calculating",
      "engine": "knitr::rmarkdown",
      "headings": [
        "calculate_representation()",
        "calculate_distance",
        "calculate_pcomp",
        "calculate_sampsize",
        "calculate_allocation",
        "Proportional allocation",
        "Optimal Allocation",
        "Equal allocation",
        "Manual allocation",
        "Sample evaluation algorithms",
        "calculate_coobs",
        "Latin hypercube sampling evaluation algorithms",
        "calculate_pop",
        "calculate_lhsOpt"
      ],
      "created": "2022-01-27 18:53:14",
      "modified": "2023-06-09 23:59:35",
      "commits": 23
    },
    {
      "source": "sampling.Rmd",
      "filename": "sampling.html",
      "title": "Sampling",
      "engine": "knitr::rmarkdown",
      "headings": [
        "sample_srs",
        "sample_systematic",
        "sample_strat",
        "method = \"Queinnec\"",
        "method = \"random",
        "sample_sys_strat",
        "sample_nc",
        "sample_clhs",
        "sample_balanced",
        "sample_ahels",
        "sample_existing",
        "sample_existing(type = \"clhs\")",
        "sample_existing(type = \"balanced\")",
        "sample_existing(type = \"srs\")",
        "sample_existing(type = \"strat\")"
      ],
      "created": "2022-01-27 18:53:14",
      "modified": "2025-06-18 16:59:40",
      "commits": 27
    },
    {
      "source": "sgsR.Rmd",
      "filename": "sgsR.html",
      "title": "sgsR",
      "engine": "knitr::rmarkdown",
      "headings": [
        "Algorithm structure",
        "strat_*",
        "sample_*",
        "calculate_* & extract_*",
        "Parameters",
        "mraster",
        "sraster",
        "access",
        "%>%"
      ],
      "created": "2022-01-27 18:53:14",
      "modified": "2023-02-08 18:03:07",
      "commits": 11
    },
    {
      "source": "stratification.Rmd",
      "filename": "stratification.html",
      "title": "Stratification",
      "engine": "knitr::rmarkdown",
      "headings": [
        "strat_kmeans",
        "strat_quantiles",
        "strat_breaks",
        "strat_poly",
        "strat_map"
      ],
      "created": "2022-01-27 18:53:14",
      "modified": "2023-02-08 18:03:07",
      "commits": 15
    }
  ],
  "_score": 7.385606273598312,
  "_indexed": true,
  "_nocasepkg": "sgsr",
  "_universes": [
    "tgoodbody"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.5.0",
      "date": "2026-10-11T09:24:27.000Z",
      "distro": "resolute",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/75e7b8e96b554cf1a77ec322d02b27b5c90b9384164414721480f0a0eb83ff30",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.6.1",
      "os": "linux",
      "version": "1.5.0",
      "date": "2026-10-11T09:24:46.000Z",
      "distro": "resolute",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/7c5ee6bc95118a4dab7adc42cadb0a161db517e3589f4224ce64cb0b7d449902",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "1.5.0",
      "date": "2026-10-11T09:35:24.000Z",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/7f46986b12d9fb1657bfabebce4e501b61e13720691576db989fa1d652330685",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.6.1",
      "os": "mac",
      "version": "1.5.0",
      "date": "2026-10-11T09:37:21.000Z",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/b3ec6fc03e0a51ea976ecb82366cd72290c23d375ec1b9fb95afb197167cc328",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.5.0",
      "date": "2026-10-11T09:24:31.000Z",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/4d26b848436fded46670253c304e803e83fbdeb8698d113bc45febc9fdeef807",
      "status": "success",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "1.5.0",
      "date": "2026-10-11T09:23:24.000Z",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/aea6985e11b4d07bd52e206267478811b12956d64e60348209e35d5882d260f1",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "1.5.0",
      "date": "2026-10-11T09:23:36.000Z",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/2c7d859ec94385e7edf2f772578a664f8459ff64319d3a3bcbc2a6c4d92fc94a",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    },
    {
      "r": "4.6.1",
      "os": "win",
      "version": "1.5.0",
      "date": "2026-10-11T09:23:41.000Z",
      "commit": "be8855e75e650f2763294692878a6f6613049532",
      "fileid": "https://r2.ropensci.org/a03a1a0e126d3cbba622111b5e74437444510565113d050c53ebef373e8730a7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/tgoodbody/actions/runs/38127850757"
    }
  ]
}