{
  "_id": "6a2bb8ee5783985943199c63",
  "Package": "n4m",
  "Type": "Package",
  "Title": "Portable Partial Least Squares and NIRS Engine",
  "Version": "0.99.0",
  "Date": "2026-05-20",
  "Authors@R": "c(person(\"Gregory\", \"Beurier\", role = c(\"aut\", \"cre\"),\nemail = \"gregory.beurier@cirad.fr\"),\nperson(\"pls4all\", \"contributors\", role = \"ctb\"))",
  "Description": "Implements a portable Partial Least Squares (PLS) and\nNear-Infrared Spectroscopy (NIRS) engine. Provides fit/predict\nwrappers for the shipped PLS regression solvers (NIPALS,\nSIMPLS, SVD, kernel, wide-kernel, orthogonal-scores, power,\nrandomized SVD, PCR), variants (sparse SIMPLS, CPPLS, weighted,\nrobust, ridge, continuum, multi-block, GLM, MIR), adaptive\nAOM-PLS and POP-PLS operator selection, variable-selection\nmethods (SPA, CARS, GA, random frog, stability selection, VIP),\ndiagnostics (Hotelling T2, Q residuals, DModX), and calibration\ntransfer (PDS, DS). The C++17 implementation is vendored and\ncompiled from source at install time; no external system\nlibraries are required.",
  "License": "CeCILL (== 2.1)",
  "URL": "https://github.com/GBeurier/nirs4all-methods",
  "BugReports": "https://github.com/GBeurier/nirs4all-methods/issues",
  "SystemRequirements": "C++17, GNU make",
  "NeedsCompilation": "yes",
  "Encoding": "UTF-8",
  "VignetteBuilder": "knitr",
  "Config/testthat/edition": "3",
  "Config/roxygen2/version": "8.0.0",
  "Config/pak/sysreqs": "make",
  "Repository": "https://gbeurier.r-universe.dev",
  "Date/Publication": "2026-06-12 05:27:52 UTC",
  "RemoteUrl": "https://github.com/GBeurier/nirs4all-methods",
  "RemoteRef": "HEAD",
  "RemoteSha": "288e2a888054663484f332ee2a69209c2bb071d2",
  "RemoteSubdir": "bindings/r/n4m",
  "Packaged": {
    "Date": "2026-06-12 07:27:08 UTC",
    "User": "root"
  },
  "Author": "Gregory Beurier [aut, cre],\npls4all contributors [ctb]",
  "Maintainer": "Gregory Beurier <gregory.beurier@cirad.fr>",
  "MD5sum": "d0f1f7f86dd508239fab52c14390c93c",
  "_user": "gbeurier",
  "_type": "src",
  "_file": "n4m_0.99.0.tar.gz",
  "_fileid": "0b4b727e75760f828b370e864cae5378de225224a3bf8daeeb83443fb6a9e3c3",
  "_filesize": 1042047,
  "_sha256": "0b4b727e75760f828b370e864cae5378de225224a3bf8daeeb83443fb6a9e3c3",
  "_created": "2026-06-12T07:27:08.000Z",
  "_published": "2026-06-12T07:44:46.504Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 80980129287,
      "time": 192,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7585657132"
    },
    {
      "job": 80980129269,
      "time": 200,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7585659791"
    },
    {
      "job": 80980129260,
      "time": 209,
      "config": "linux-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585661748"
    },
    {
      "job": 80980129245,
      "time": 165,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585648729"
    },
    {
      "job": 80980129314,
      "time": 224,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7585832484"
    },
    {
      "job": 80980129270,
      "time": 545,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7585887095"
    },
    {
      "job": 80980129257,
      "time": 245,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585837447"
    },
    {
      "job": 80980129265,
      "time": 405,
      "config": "macos-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585822226"
    },
    {
      "job": 80979284944,
      "time": 352,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585599041"
    },
    {
      "job": 80980129216,
      "time": 198,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585661712"
    },
    {
      "job": 80980129250,
      "time": 300,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7585688787"
    },
    {
      "job": 80980129251,
      "time": 267,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "OK",
      "artifact": "7585679088"
    },
    {
      "job": 80980129241,
      "time": 286,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7585684624"
    }
  ],
  "_buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/GBeurier/nirs4all-methods",
  "_commit": {
    "id": "288e2a888054663484f332ee2a69209c2bb071d2",
    "author": "gbeurier <beurier@cirad.fr>",
    "committer": "gbeurier <beurier@cirad.fr>",
    "message": "feat(matlab): expose portable preprocessing shims\n",
    "time": 1781242072
  },
  "_maintainer": {
    "name": "Gregory Beurier",
    "email": "gregory.beurier@cirad.fr",
    "login": "pamdeveloper",
    "description": "",
    "uuid": 26689252
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "stats",
      "role": "Imports"
    },
    {
      "package": "testthat",
      "version": ">= 3.0.0",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "rmarkdown",
      "role": "Suggests"
    },
    {
      "package": "markdown",
      "role": "Suggests"
    },
    {
      "package": "pls",
      "role": "Suggests"
    }
  ],
  "_owner": "gbeurier",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [
    {
      "week": "2026-20",
      "n": 177
    },
    {
      "week": "2026-21",
      "n": 56
    },
    {
      "week": "2026-22",
      "n": 78
    },
    {
      "week": "2026-24",
      "n": 42
    }
  ],
  "_tags": [
    {
      "name": "phase-0",
      "date": "2026-05-14"
    },
    {
      "name": "phase-1",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3a-preprocessing-pipeline",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3b-msc-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3c-detrend-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3d-savgol-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3e-emsc-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3f-asls-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3g-norris-williams-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3h-wavelet-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3i-osc-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3j-epo-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3k-regression-metrics",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3l-validation-splits",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3m-cross-validation-engine",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3n-classification-metrics",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3o-variable-importance",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3p-component-coefficients",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3q-advanced-validation-splits",
      "date": "2026-05-14"
    },
    {
      "name": "phase-3r-classification-extensions",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4a-simpls",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4b-svd",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4c-pcr",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4d-kernel",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4e-wide-kernel",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4f-orthogonal-scores",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4g-power",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4h-randomized-svd",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4i-canonical",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4j-pls-da",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4k-opls",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4l-opls-da",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4m-multiclass-opls-da",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4n-pls-svd",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4o-simpls-component-cv",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4p-pls-lda",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4q-pls-logistic",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4r-mb-pls",
      "date": "2026-05-14"
    },
    {
      "name": "phase-4s-lw-pls",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5a-variable-selection-rankers",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5b-interval-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5c-stability-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5d-uve-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5e-spa-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5f-cars-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5g-random-frog-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5h-scars-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5i-ga-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5j-shaving-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5k-bve-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5l-t2-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5m-wvc-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5n-emcuve-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5o-randomization-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5p-bipls-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5q-sipls-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5r-wvc-threshold-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5s-rep-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5t-ipw-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-5u-st-selection",
      "date": "2026-05-14"
    },
    {
      "name": "phase-6a-aom-preprocessing",
      "date": "2026-05-14"
    },
    {
      "name": "phase-16-to-30-overview-completion",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31a-batch-1-sparse-di-recursive",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31b-batch-2-cppls-weighted-robust-ridge-continuum",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31c-batch-3-n-pls-kernel-pls",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31d-batch-4-o2pls-press",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31e-batch-5-pls-diagnostics",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31f-external-refs-only",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31g-batch-7-sparse-variants",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31h-batch-8-calibration-transfer",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31i-batch-9-pls-heads",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31j-batch-10-ensembles",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31k-batch-11-multiblock",
      "date": "2026-05-15"
    },
    {
      "name": "phase-31l-batch-12-monitoring-onese",
      "date": "2026-05-15"
    },
    {
      "name": "phase-32-wasm-binding",
      "date": "2026-05-15"
    },
    {
      "name": "phase-32a-wasm-parity",
      "date": "2026-05-15"
    },
    {
      "name": "phase-6b-aom-global-selection",
      "date": "2026-05-15"
    },
    {
      "name": "phase-6c-aom-strict-operators",
      "date": "2026-05-15"
    },
    {
      "name": "phase-6d-aom-whittaker-fck",
      "date": "2026-05-15"
    },
    {
      "name": "phase-6e-aom-pop-selection",
      "date": "2026-05-15"
    },
    {
      "name": "phase-6f-public-aom-pop-abi",
      "date": "2026-05-15"
    },
    {
      "name": "phase-7-comprehensive-benchmark",
      "date": "2026-05-15"
    },
    {
      "name": "phase-7a-benchmark-foundation",
      "date": "2026-05-15"
    },
    {
      "name": "phase-8-to-15-pls-extensions",
      "date": "2026-05-15"
    },
    {
      "name": "phase-33-julia-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-34-octave-matlab-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-35-jni-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-37-go-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-38-rust-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-39-dotnet-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-40-ruby-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-41-lua-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-42-nim-binding",
      "date": "2026-05-16"
    },
    {
      "name": "phase-43-blas-backend",
      "date": "2026-05-16"
    },
    {
      "name": "phase-44-openmp-backend",
      "date": "2026-05-16"
    },
    {
      "name": "phase-45-cuda-backend",
      "date": "2026-05-16"
    },
    {
      "name": "phase-47-gpr-on-pls",
      "date": "2026-05-16"
    },
    {
      "name": "phase-48-pso-pls",
      "date": "2026-05-16"
    },
    {
      "name": "phase-49-vissa-pls",
      "date": "2026-05-16"
    },
    {
      "name": "archive/release-m0-baseline-20260522",
      "date": "2026-05-18"
    },
    {
      "name": "pls4all-final/v1.0.0-pre-merge",
      "date": "2026-05-19"
    },
    {
      "name": "v0.97.0",
      "date": "2026-05-19"
    },
    {
      "name": "v0.97.1",
      "date": "2026-05-19"
    },
    {
      "name": "v0.97.2",
      "date": "2026-05-19"
    },
    {
      "name": "v0.97.3",
      "date": "2026-05-19"
    },
    {
      "name": "abi-p4a-final/v0.97.3-pre-merge",
      "date": "2026-05-21"
    },
    {
      "name": "archive/codex-parity-30x30-dashboard-fixes-20260522",
      "date": "2026-05-21"
    },
    {
      "name": "archive/wip-dashboard-20260522",
      "date": "2026-05-22"
    },
    {
      "name": "v0.98.0",
      "date": "2026-05-26"
    },
    {
      "name": "v0.99.0",
      "date": "2026-06-10"
    }
  ],
  "_stars": 15,
  "_contributors": [
    {
      "user": "gbeurier",
      "count": 559,
      "uuid": 95907737
    },
    {
      "user": "pamdeveloper",
      "count": 13,
      "uuid": 26689252
    }
  ],
  "_userbio": {
    "uuid": 95907737,
    "type": "user",
    "name": "Gregory Beurier",
    "description": "Researcher at CIRAD.\r\nInterested in complex systems modeling and machine learning."
  },
  "_downloads": {
    "count": 0,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/n4m"
  },
  "_devurl": "https://github.com/gbeurier/nirs4all-methods",
  "_searchresults": 5,
  "_topics": [
    "cpp"
  ],
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/n4m.html",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_cranurl": false,
  "_exports": [
    "aom_pls",
    "aom_preprocess",
    "aompls",
    "approximate_press",
    "bagging_pls",
    "bagging_pls_fit",
    "bipls_select",
    "boosting_pls",
    "boosting_pls_fit",
    "bve_select",
    "cars_select",
    "coefficient_select",
    "continuum_regression",
    "continuum_regression_fit",
    "cppls",
    "cppls_fit",
    "di_pls",
    "di_pls_fit",
    "ds_fit",
    "ecr",
    "ecr_fit",
    "emcuve_select",
    "fused_sparse_pls_fit",
    "ga_select",
    "gpr_pls_fit",
    "group_sparse_pls_fit",
    "interval_select",
    "ipw_select",
    "irf_select",
    "iriv_select",
    "kennard_stone_split",
    "kernel_pls_fit",
    "lw_pls_fit",
    "mb_pls",
    "mb_pls_fit",
    "mir_pls",
    "mir_pls_fit",
    "missing_aware_nipals",
    "missing_aware_nipals_fit",
    "MSEP",
    "mvr",
    "n_pls_fit",
    "n4m_abi_version",
    "n4m_fit",
    "n4m_method",
    "n4m_predict",
    "n4m_version",
    "o2pls",
    "o2pls_fit",
    "on_pls_fit",
    "one_se_rule",
    "opls",
    "pcr",
    "pds_fit",
    "pls",
    "pls_cox_fit",
    "pls_diagnostics",
    "pls_glm",
    "pls_glm_fit",
    "pls_lda_fit",
    "pls_logistic_fit",
    "pls_mdatools",
    "pls_monitoring",
    "pls_qda_fit",
    "plsr",
    "pop_pls",
    "poppls",
    "pso_select",
    "R2",
    "random_frog_select",
    "random_subspace_pls",
    "random_subspace_pls_fit",
    "randomization_select",
    "recursive_pls",
    "recursive_pls_fit",
    "rep_select",
    "ridge_pls",
    "ridge_pls_fit",
    "RMSEP",
    "robust_pls",
    "robust_pls_fit",
    "rosa_fit",
    "savgol_transform",
    "scars_select",
    "selectivity_ratio_select",
    "selectNcomp",
    "shaving_select",
    "sipls_select",
    "snv_transform",
    "so_pls_fit",
    "spa_select",
    "sparse_pls",
    "sparse_pls_da_fit",
    "sparse_simpls_fit",
    "st_select",
    "stability_select",
    "t2_select",
    "uve_select",
    "vip_select",
    "vip_spa_select",
    "vissa_select",
    "weighted_pls",
    "weighted_pls_fit",
    "wvc_select",
    "wvc_threshold_select"
  ],
  "_help": [
    {
      "page": "aom_pls",
      "title": "AOM-PLS and POP-PLS adaptive operator selection",
      "topics": [
        "aompls",
        "aom_pls",
        "poppls",
        "pop_pls"
      ]
    },
    {
      "page": "aom_preprocess",
      "title": "Adaptive Operator-Mixture preprocessing fit/transform.",
      "topics": [
        "aom_preprocess"
      ]
    },
    {
      "page": "approximate_press",
      "title": "Approximate-PRESS component selection.",
      "topics": [
        "approximate_press"
      ]
    },
    {
      "page": "bagging_pls",
      "title": "Bagging PLS — formula entry point.",
      "topics": [
        "bagging_pls"
      ]
    },
    {
      "page": "bagging_pls_fit",
      "title": "Bagging PLS (bootstrap aggregation of PLS regressors).",
      "topics": [
        "bagging_pls_fit"
      ]
    },
    {
      "page": "bipls_select",
      "title": "biPLS — backward interval PLS.",
      "topics": [
        "bipls_select"
      ]
    },
    {
      "page": "boosting_pls",
      "title": "Boosting PLS — formula entry point.",
      "topics": [
        "boosting_pls"
      ]
    },
    {
      "page": "boosting_pls_fit",
      "title": "Boosting PLS (stage-wise refit with learning_rate).",
      "topics": [
        "boosting_pls_fit"
      ]
    },
    {
      "page": "bve_select",
      "title": "BVE-PLS.",
      "topics": [
        "bve_select"
      ]
    },
    {
      "page": "cars_select",
      "title": "CARS — Competitive Adaptive Reweighted Sampling.",
      "topics": [
        "cars_select"
      ]
    },
    {
      "page": "coef.n4m_fit",
      "title": "Extract the regression coefficients of a [pls()]-fitted model.",
      "topics": [
        "coef.n4m_fit"
      ]
    },
    {
      "page": "coefficient_select",
      "title": "Coefficient-magnitude ranker.",
      "topics": [
        "coefficient_select"
      ]
    },
    {
      "page": "continuum_regression",
      "title": "Continuum regression — formula entry point.",
      "topics": [
        "continuum_regression"
      ]
    },
    {
      "page": "continuum_regression_fit",
      "title": "Continuum regression (tau in [0, 1]).",
      "topics": [
        "continuum_regression_fit"
      ]
    },
    {
      "page": "cppls",
      "title": "Canonical Powered PLS — formula entry point.",
      "topics": [
        "cppls"
      ]
    },
    {
      "page": "cppls_fit",
      "title": "Canonical Powered PLS fit (Indahl 2005).",
      "topics": [
        "cppls_fit"
      ]
    },
    {
      "page": "di_pls",
      "title": "Domain-invariant PLS - formula entry point.",
      "topics": [
        "di_pls"
      ]
    },
    {
      "page": "di_pls_fit",
      "title": "Domain-Invariant PLS (Nikzad-Langerodi 2018).",
      "topics": [
        "di_pls_fit"
      ]
    },
    {
      "page": "ds_fit",
      "title": "Direct Standardization (calibration transfer).",
      "topics": [
        "ds_fit"
      ]
    },
    {
      "page": "ecr",
      "title": "Elastic Component Regression — formula entry point.",
      "topics": [
        "ecr"
      ]
    },
    {
      "page": "ecr_fit",
      "title": "Elastic Component Regression (Liu 2009/2010).",
      "topics": [
        "ecr_fit"
      ]
    },
    {
      "page": "emcuve_select",
      "title": "EMCUVE — ensemble Monte Carlo UVE.",
      "topics": [
        "emcuve_select"
      ]
    },
    {
      "page": "fused_sparse_pls_fit",
      "title": "Fused-sparse PLS (L1 + adjacent-coef smoothing).",
      "topics": [
        "fused_sparse_pls_fit"
      ]
    },
    {
      "page": "ga_select",
      "title": "GA-PLS — genetic algorithm variable selection.",
      "topics": [
        "ga_select"
      ]
    },
    {
      "page": "gpr_pls_fit",
      "title": "Gaussian Process Regression on PLS scores (single-target Y).",
      "topics": [
        "gpr_pls_fit"
      ]
    },
    {
      "page": "group_sparse_pls_fit",
      "title": "Group-sparse PLS (group L1 across feature groups).",
      "topics": [
        "group_sparse_pls_fit"
      ]
    },
    {
      "page": "interval_select",
      "title": "Interval selector (iPLS).",
      "topics": [
        "interval_select"
      ]
    },
    {
      "page": "ipw_select",
      "title": "IPW-PLS.",
      "topics": [
        "ipw_select"
      ]
    },
    {
      "page": "irf_select",
      "title": "IRF — Interval Random Frog.",
      "topics": [
        "irf_select"
      ]
    },
    {
      "page": "iriv_select",
      "title": "IRIV — Iteratively Retains Informative Variables.",
      "topics": [
        "iriv_select"
      ]
    },
    {
      "page": "kennard_stone_split",
      "title": "Kennard-Stone train/test split",
      "topics": [
        "kennard_stone_split"
      ]
    },
    {
      "page": "kernel_pls_fit",
      "title": "Non-linear kernel PLS (Rosipal & Trejo 2001).",
      "topics": [
        "kernel_pls_fit"
      ]
    },
    {
      "page": "lw_pls_fit",
      "title": "Locally-weighted PLS (Næs & Centner 1998).",
      "topics": [
        "lw_pls_fit"
      ]
    },
    {
      "page": "mb_pls",
      "title": "Multi-block PLS — formula entry point.",
      "topics": [
        "mb_pls"
      ]
    },
    {
      "page": "mb_pls_fit",
      "title": "Multi-block PLS (block-weighted SIMPLS).",
      "topics": [
        "mb_pls_fit"
      ]
    },
    {
      "page": "mir_pls",
      "title": "MIR-PLS — formula entry point.",
      "topics": [
        "mir_pls"
      ]
    },
    {
      "page": "mir_pls_fit",
      "title": "MIR-PLS — Multivariate Inverse Regression PLS.",
      "topics": [
        "mir_pls_fit"
      ]
    },
    {
      "page": "missing_aware_nipals",
      "title": "Missing-aware NIPALS — formula entry point.",
      "topics": [
        "missing_aware_nipals"
      ]
    },
    {
      "page": "missing_aware_nipals_fit",
      "title": "Missing-aware NIPALS PLS (Nelson 1996).",
      "topics": [
        "missing_aware_nipals_fit"
      ]
    },
    {
      "page": "n_pls_fit",
      "title": "N-PLS (3-way tensor) regression. `X_flat` is the flattened (n, mode_j*mode_k) matrix.",
      "topics": [
        "n_pls_fit"
      ]
    },
    {
      "page": "pls4all_abi_version",
      "title": "Loaded ABI version as an integer vector (major, minor, patch).",
      "topics": [
        "n4m_abi_version"
      ]
    },
    {
      "page": "pls4all_fit",
      "title": "Fit a PLS regression model via the libn4m C ABI.",
      "topics": [
        "n4m_fit"
      ]
    },
    {
      "page": "n4m_method",
      "title": "Low-level n4m method dispatcher.",
      "topics": [
        "n4m_method"
      ]
    },
    {
      "page": "pls4all_predict",
      "title": "Predict with a fitted n4m model.",
      "topics": [
        "n4m_predict"
      ]
    },
    {
      "page": "pls4all_version",
      "title": "Runtime version string of the loaded libn4m.",
      "topics": [
        "n4m_version"
      ]
    },
    {
      "page": "o2pls",
      "title": "O2-PLS — formula entry point (uses n_predictive for component count).",
      "topics": [
        "o2pls"
      ]
    },
    {
      "page": "o2pls_fit",
      "title": "O2-PLS (bi-directional OPLS).",
      "topics": [
        "o2pls_fit"
      ]
    },
    {
      "page": "on_pls_fit",
      "title": "OnPLS — Orthogonal multi-block PLS (joint + unique loadings).",
      "topics": [
        "on_pls_fit"
      ]
    },
    {
      "page": "one_se_rule",
      "title": "One-SE rule from a (max_components × n_folds) fold RMSE matrix.",
      "topics": [
        "one_se_rule"
      ]
    },
    {
      "page": "opls",
      "title": "Formula-based OPLS regression wrapper around the n4m C ABI.",
      "topics": [
        "opls"
      ]
    },
    {
      "page": "pds_fit",
      "title": "Piecewise Direct Standardization (calibration transfer).",
      "topics": [
        "pds_fit"
      ]
    },
    {
      "page": "pls",
      "title": "Formula-based PLS regression wrapper around the n4m C ABI",
      "topics": [
        "pls"
      ]
    },
    {
      "page": "pls_cox_fit",
      "title": "PLS-Cox proportional hazards.",
      "topics": [
        "pls_cox_fit"
      ]
    },
    {
      "page": "pls_diagnostics",
      "title": "PLS diagnostics: T², Q, DModX from a fitted model.",
      "topics": [
        "pls_diagnostics"
      ]
    },
    {
      "page": "pls_glm",
      "title": "PLS-GLM — formula entry point. Default is Gaussian; set `family = \"poisson\"` for Poisson IRLS.",
      "topics": [
        "pls_glm"
      ]
    },
    {
      "page": "pls_glm_fit",
      "title": "PLS-GLM — Gaussian (default) or Poisson IRLS.",
      "topics": [
        "pls_glm_fit"
      ]
    },
    {
      "page": "pls_lda_fit",
      "title": "PLS-LDA — Linear Discriminant Analysis on PLS scores.",
      "topics": [
        "pls_lda_fit"
      ]
    },
    {
      "page": "pls_logistic_fit",
      "title": "Multinomial logistic regression on PLS scores.",
      "topics": [
        "pls_logistic_fit"
      ]
    },
    {
      "page": "pls_mdatools",
      "title": "mdatools-style matrix PLS interface",
      "topics": [
        "pls_mdatools",
        "predict.n4m_mdatools_pls"
      ]
    },
    {
      "page": "pls_monitoring",
      "title": "PLS process monitoring (Hotelling T² + Q with alarms).",
      "topics": [
        "pls_monitoring"
      ]
    },
    {
      "page": "pls_qda_fit",
      "title": "PLS-QDA (Quadratic Discriminant Analysis on PLS scores).",
      "topics": [
        "pls_qda_fit"
      ]
    },
    {
      "page": "plsr",
      "title": "PLS package compatibility facade",
      "topics": [
        "coef.n4m_mvr",
        "MSEP",
        "mvr",
        "pcr",
        "plsr",
        "predict.n4m_mvr",
        "R2",
        "RMSEP",
        "selectNcomp"
      ]
    },
    {
      "page": "predict.n4m_fit",
      "title": "Predict from a [pls()]-fitted model.",
      "topics": [
        "predict.n4m_fit"
      ]
    },
    {
      "page": "predict.n4m_method_fit",
      "title": "Predict from a MethodResult-based n4m fit.",
      "topics": [
        "predict.n4m_method_fit"
      ]
    },
    {
      "page": "pso_select",
      "title": "PSO-PLS (Binary Particle Swarm Optimization).",
      "topics": [
        "pso_select"
      ]
    },
    {
      "page": "random_frog_select",
      "title": "Random Frog (Phase 5g).",
      "topics": [
        "random_frog_select"
      ]
    },
    {
      "page": "random_subspace_pls",
      "title": "Random-subspace PLS — formula entry point.",
      "topics": [
        "random_subspace_pls"
      ]
    },
    {
      "page": "random_subspace_pls_fit",
      "title": "Random-subspace PLS (Ho 1998).",
      "topics": [
        "random_subspace_pls_fit"
      ]
    },
    {
      "page": "randomization_select",
      "title": "Randomization test selector.",
      "topics": [
        "randomization_select"
      ]
    },
    {
      "page": "recursive_pls",
      "title": "Recursive PLS - formula entry point.",
      "topics": [
        "recursive_pls"
      ]
    },
    {
      "page": "recursive_pls_fit",
      "title": "Moving-window recursive PLS.",
      "topics": [
        "recursive_pls_fit"
      ]
    },
    {
      "page": "rep_select",
      "title": "REP-PLS.",
      "topics": [
        "rep_select"
      ]
    },
    {
      "page": "ridge_pls",
      "title": "Ridge PLS — formula entry point.",
      "topics": [
        "ridge_pls"
      ]
    },
    {
      "page": "ridge_pls_fit",
      "title": "L2-augmented PLS regression.",
      "topics": [
        "ridge_pls_fit"
      ]
    },
    {
      "page": "robust_pls",
      "title": "Robust PLS — formula entry point.",
      "topics": [
        "robust_pls"
      ]
    },
    {
      "page": "robust_pls_fit",
      "title": "Robust PLS via Huber IRLS.",
      "topics": [
        "robust_pls_fit"
      ]
    },
    {
      "page": "rosa_fit",
      "title": "ROSA — Response-Oriented Sequential Alternation.",
      "topics": [
        "rosa_fit"
      ]
    },
    {
      "page": "scars_select",
      "title": "SCARS — Stability + CARS.",
      "topics": [
        "scars_select"
      ]
    },
    {
      "page": "selectivity_ratio_select",
      "title": "Selectivity-ratio ranker.",
      "topics": [
        "selectivity_ratio_select"
      ]
    },
    {
      "page": "shaving_select",
      "title": "Shaving selector.",
      "topics": [
        "shaving_select"
      ]
    },
    {
      "page": "sipls_select",
      "title": "siPLS — synergistic interval PLS.",
      "topics": [
        "sipls_select"
      ]
    },
    {
      "page": "preprocessing",
      "title": "Portable preprocessing transforms",
      "topics": [
        "savgol_transform",
        "snv_transform"
      ]
    },
    {
      "page": "so_pls_fit",
      "title": "Sequential & Orthogonalised multi-block PLS (Næs et al. 2011). `block_sizes` integer vector summing to ncol(X); `n_components_per_block` integer vector of same length.",
      "topics": [
        "so_pls_fit"
      ]
    },
    {
      "page": "spa_select",
      "title": "SPA — Successive Projections Algorithm.",
      "topics": [
        "spa_select"
      ]
    },
    {
      "page": "sparse_pls",
      "title": "Sparse SIMPLS — formula entry point.",
      "topics": [
        "sparse_pls"
      ]
    },
    {
      "page": "sparse_pls_da_fit",
      "title": "Sparse PLS-DA classifier (`y_labels` is an integer vector of class IDs).",
      "topics": [
        "sparse_pls_da_fit"
      ]
    },
    {
      "page": "sparse_simpls_fit",
      "title": "Sparse SIMPLS fit.",
      "topics": [
        "sparse_simpls_fit"
      ]
    },
    {
      "page": "st_select",
      "title": "ST-PLS — score-threshold selector.",
      "topics": [
        "st_select"
      ]
    },
    {
      "page": "stability_select",
      "title": "Stability selector (coefficient stability, MCUVE-style).",
      "topics": [
        "stability_select"
      ]
    },
    {
      "page": "t2_select",
      "title": "T2-PLS - sweep over alpha thresholds.",
      "topics": [
        "t2_select"
      ]
    },
    {
      "page": "uve_select",
      "title": "UVE — Uninformative Variable Elimination.",
      "topics": [
        "uve_select"
      ]
    },
    {
      "page": "vip_select",
      "title": "VIP (Variable Importance in Projection) ranker.",
      "topics": [
        "vip_select"
      ]
    },
    {
      "page": "vip_spa_select",
      "title": "VIP-SPA hybrid selector.",
      "topics": [
        "vip_spa_select"
      ]
    },
    {
      "page": "vissa_select",
      "title": "VISSA — Variable Iterative Space Shrinkage Approach.",
      "topics": [
        "vissa_select"
      ]
    },
    {
      "page": "weighted_pls",
      "title": "Sample-weighted PLS — formula entry point.",
      "topics": [
        "weighted_pls"
      ]
    },
    {
      "page": "weighted_pls_fit",
      "title": "Sample-weighted PLS (sqrt(w)-prescaled SIMPLS).",
      "topics": [
        "weighted_pls_fit"
      ]
    },
    {
      "page": "wvc_select",
      "title": "WVC-PLS — weighted vector correlation top-k selector.",
      "topics": [
        "wvc_select"
      ]
    },
    {
      "page": "wvc_threshold_select",
      "title": "WVC-threshold selector.",
      "topics": [
        "wvc_threshold_select"
      ]
    }
  ],
  "_readme": "https://github.com/GBeurier/nirs4all-methods/raw/HEAD/README.md",
  "_rundeps": [],
  "_sysdeps": [
    {
      "shlib": "libstdc++",
      "package": "libstdc++6",
      "source": "gcc",
      "version": "14.2.0-4ubuntu2~24.04.1",
      "name": "c++",
      "homepage": "http://gcc.gnu.org/",
      "description": "GNU Standard C++ Library v3"
    }
  ],
  "_vignettes": [
    {
      "source": "n4m.Rmd",
      "filename": "n4m.html",
      "title": "Introduction to n4m",
      "engine": "knitr::knitr",
      "headings": [
        "Quick start (matrix API)",
        "Formula interface",
        "Version and ABI",
        "Supported algorithms",
        "Further reading"
      ],
      "created": "2026-05-23 14:44:10",
      "modified": "2026-05-28 07:12:22",
      "commits": 2
    }
  ],
  "_score": 4.477121254719663,
  "_indexed": true,
  "_nocasepkg": "n4m",
  "_universes": [
    "gbeurier",
    "pamdeveloper"
  ],
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.99.0",
      "date": "2026-06-12T07:30:36.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "76156c51f5d469c7be03559cb7280233a3a1c9db90d7cbc19d064331ff09a0bb",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.99.0",
      "date": "2026-06-12T07:30:38.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "5678b873d0a4d906054107df077caae839344434846a301c8b462b2a2bf7e8ff",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.99.0",
      "date": "2026-06-12T07:30:43.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "13a87f22c899b7d1dc05793dabddf4219678230cf4e97925e154c92568ecbc2f",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.99.0",
      "date": "2026-06-12T07:30:21.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "5aea684c32ee82dff27613e74e56614edafb0113d80ac8b68ab774330d1157f9",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.99.0",
      "date": "2026-06-12T07:39:42.000Z",
      "arch": "aarch64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "b65c48230760a23312bf8a3b837f88585cafc5dba2afadcc49c29677bbdcc693",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.99.0",
      "date": "2026-06-12T07:39:37.000Z",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "f7632684b636ed832b508ca1a12667b6a1c6635e5c3b2aa4010cef2f1554f860",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.99.0",
      "date": "2026-06-12T07:39:48.000Z",
      "arch": "aarch64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "64c20feae23603b7677827ef01122a78b35101dfd83d8ac4b01f76bd27cb3bd4",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.99.0",
      "date": "2026-06-12T07:37:11.000Z",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "59402365e0628c4254767507b66ae5f7e5299e53ffa7c6d78c2d3abb7f1b5ec8",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.99.0",
      "date": "2026-06-12T07:30:38.000Z",
      "arch": "emscripten",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "3ef956eef78d72fc0c4b30db682a7e321c8e1331e486a502391178b382b0cd93",
      "status": "success",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.99.0",
      "date": "2026-06-12T07:29:59.000Z",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "931d916311012322c50d0c3609d69b33d087e98edb9f21c9e58cb7d064db4108",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.99.0",
      "date": "2026-06-12T07:29:40.000Z",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "1bd48a8fb70a900a9b630f442cb8600594188375b044491bda08b512df58d0fa",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.99.0",
      "date": "2026-06-12T07:30:07.000Z",
      "arch": "x86_64",
      "commit": "288e2a888054663484f332ee2a69209c2bb071d2",
      "fileid": "5a2f355606f02deecf3263a9dd08e2443b814c8cb94aa92b3d41d96e6baf6217",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/gbeurier/actions/runs/27401134150"
    }
  ]
}