{
  "_id": "6a297f8b732311cd875b2422",
  "Package": "opticskxi",
  "Title": "OPTICS K-Xi Density-Based Clustering",
  "Version": "1.2.2",
  "Authors@R": "person(\"Thomas\", \"Charlon\", role = c(\"aut\", \"cre\"), email = \"charlon@protonmail.com\", comment = c(ORCID = \"0000-0001-7497-0470\"))",
  "Description": "Density-based clustering methods are well adapted to the\nclustering of high-dimensional data and enable the discovery of\ncore groups of various shapes despite large amounts of noise.\nThis package provides a novel density-based cluster extraction\nmethod, OPTICS k-Xi, and a framework to compare k-Xi models\nusing distance-based metrics to investigate datasets with\nunknown number of clusters. The vignette first introduces\ndensity-based algorithms with simulated datasets, then presents\nand evaluates the k-Xi cluster extraction method. Finally, the\nmodels comparison framework is described and experimented on 2\ngenetic datasets to identify groups and their discriminating\nfeatures. The k-Xi algorithm is a novel OPTICS cluster\nextraction method that specifies directly the number of\nclusters and does not require fine-tuning of the steepness\nparameter as the OPTICS Xi method. Combined with a framework\nthat compares models with varying parameters, the OPTICS k-Xi\nmethod can identify groups in noisy datasets with unknown\nnumber of clusters. Results on summarized genetic data of 1,200\npatients are in Charlon T. (2019)\n<doi:10.13097/archive-ouverte/unige:161795>. A short video\ntutorial can be found at\n<https://www.youtube.com/watch?v=P2XAjqI5Lc4/>.",
  "VignetteBuilder": "knitr",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "RoxygenNote": "7.3.2",
  "URL": "https://gitlab.com/thomaschln/opticskxi",
  "BugReports": "https://gitlab.com/thomaschln/opticskxi/-/issues",
  "NeedsCompilation": "no",
  "Packaged": {
    "Date": "2026-06-10 15:11:32 UTC",
    "User": "root"
  },
  "Author": "Thomas Charlon [aut, cre] (ORCID:\n<https://orcid.org/0000-0001-7497-0470>)",
  "Maintainer": "Thomas Charlon <charlon@protonmail.com>",
  "Repository": "https://cran.r-universe.dev",
  "Date/Publication": "2026-06-10 14:32:00 UTC",
  "RemoteUrl": "https://github.com/cran/opticskxi",
  "RemoteRef": "HEAD",
  "RemoteSha": "72964e3bc9eb8f3d636f42d14f1e4c5cc9e3a64a",
  "MD5sum": "9301851731b7baa676576b5067b563ba",
  "_user": "cran",
  "_type": "src",
  "_file": "opticskxi_1.2.2.tar.gz",
  "_fileid": "b0d3687a5d1b1a329754c65ea3b61b020fa84b119be9e6f5c5427daeb888dd00",
  "_filesize": 3652429,
  "_sha256": "b0d3687a5d1b1a329754c65ea3b61b020fa84b119be9e6f5c5427daeb888dd00",
  "_created": "2026-06-10T15:11:32.000Z",
  "_published": "2026-06-10T15:15:23.495Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 80593659375,
      "time": 188,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "OK",
      "artifact": "7539980226"
    },
    {
      "job": 80593659405,
      "time": 169,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7539972856"
    },
    {
      "job": 80592863459,
      "time": 236,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7539899064"
    },
    {
      "job": 80593659534,
      "time": 111,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7539948652"
    }
  ],
  "_buildurl": "https://github.com/r-universe/cran/actions/runs/27285865735",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/cran/opticskxi",
  "_commit": {
    "id": "72964e3bc9eb8f3d636f42d14f1e4c5cc9e3a64a",
    "author": "Thomas Charlon <charlon@protonmail.com>",
    "committer": "cran-robot <csardi.gabor+cran@gmail.com>",
    "message": "version 1.2.2\n",
    "time": 1781101920
  },
  "_maintainer": {
    "name": "Thomas Charlon",
    "email": "charlon@protonmail.com",
    "login": "thomaschln",
    "linkedin": "in/thomas-charlon-meng-phd-aba0a3275",
    "orcid": "0000-0001-7497-0470",
    "description": "Harvard Medical School Researcher\nBiomedical Informatics @hms-dbmi\nCELEHS laboratory @celehs",
    "uuid": 2394508
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 3.5.0",
      "role": "Depends"
    },
    {
      "package": "ggplot2",
      "role": "Imports"
    },
    {
      "package": "magrittr",
      "role": "Imports"
    },
    {
      "package": "Matrix",
      "role": "Imports"
    },
    {
      "package": "rlang",
      "role": "Imports"
    },
    {
      "package": "amap",
      "role": "Suggests"
    },
    {
      "package": "dbscan",
      "role": "Suggests"
    },
    {
      "package": "cowplot",
      "role": "Suggests"
    },
    {
      "package": "fastICA",
      "role": "Suggests"
    },
    {
      "package": "fpc",
      "role": "Suggests"
    },
    {
      "package": "ggrepel",
      "role": "Suggests"
    },
    {
      "package": "grid",
      "role": "Suggests"
    },
    {
      "package": "grDevices",
      "role": "Suggests"
    },
    {
      "package": "gtable",
      "role": "Suggests"
    },
    {
      "package": "knitr",
      "role": "Suggests"
    },
    {
      "package": "parallel",
      "role": "Suggests"
    },
    {
      "package": "plyr",
      "role": "Suggests"
    },
    {
      "package": "reshape2",
      "role": "Suggests"
    },
    {
      "package": "testthat",
      "role": "Suggests"
    }
  ],
  "_owner": "cran",
  "_selfowned": false,
  "_usedby": 1,
  "_updates": [
    {
      "week": "2026-24",
      "n": 1
    }
  ],
  "_tags": [
    {
      "name": "1.2.2",
      "date": "2026-06-10"
    }
  ],
  "_stars": 0,
  "_contributors": [
    {
      "user": "thomaschln",
      "count": 5,
      "uuid": 2394508
    }
  ],
  "_userbio": {
    "uuid": 6899542,
    "type": "organization",
    "name": "cran",
    "description": "Unofficial read-only mirror of all CRAN R packages"
  },
  "_downloads": {
    "count": 611,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/opticskxi"
  },
  "_devurl": "https://gitlab.com/thomaschln/opticskxi",
  "_searchresults": 2,
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/NEWS.html",
    "extra/NEWS.txt",
    "extra/opticskxi.html",
    "manual.pdf"
  ],
  "_homeurl": "https://gitlab.com/thomaschln/opticskxi",
  "_realowner": "thomaschln",
  "_cranurl": false,
  "_releases": [
    {
      "version": "0.1",
      "date": "2019-07-19"
    },
    {
      "version": "1.1.0",
      "date": "2024-12-09"
    },
    {
      "version": "1.2.0",
      "date": "2025-02-26"
    },
    {
      "version": "1.2.1",
      "date": "2025-03-09"
    }
  ],
  "_exports": [
    "%<>%",
    "%>%",
    "%$%",
    "contingency_table",
    "cosine_simi",
    "dist_matrix",
    "ensemble_metrics",
    "ensemble_models",
    "fortify_dimred",
    "fortify_ica",
    "fortify_pca",
    "get_best_kxi",
    "ggpairs",
    "ggplot_kxi_metrics",
    "ggplot_optics",
    "gtable_kxi_profiles",
    "nice_palette",
    "norm_inprod",
    "normalize",
    "opticskxi",
    "opticskxi_pipeline",
    "print_vignette_table",
    "residuals_table",
    "stddev_mean"
  ],
  "_datasets": [
    {
      "name": "crohn",
      "title": "Crohn's disease data",
      "object": "crohn",
      "file": "crohn.RData",
      "class": [
        "data.frame"
      ],
      "fields": [
        "pid",
        "id",
        "fid",
        "mid",
        "sex",
        "crohn",
        "loc1.a1",
        "loc1.a2",
        "loc2.a1",
        "loc2.a2",
        "loc3.a1",
        "loc3.a2",
        "loc4.a1",
        "loc4.a2",
        "loc5.a1",
        "loc5.a2",
        "loc6.a1",
        "loc6.a2",
        "loc7.a1",
        "loc7.a2",
        "loc8.a1",
        "loc8.a2",
        "loc9.a1",
        "loc9.a2",
        "loc10.a1",
        "loc10.a2",
        "loc11.a1",
        "loc11.a2",
        "loc12.a1",
        "loc12.a2",
        "loc13.a1",
        "loc13.a2",
        "loc14.a1",
        "loc14.a2",
        "loc15.a1",
        "loc15.a2",
        "loc16.a1",
        "loc16.a2",
        "loc17.a1",
        "loc17.a2",
        "loc18.a1",
        "loc18.a2",
        "loc19.a1",
        "loc19.a2",
        "loc20.a1",
        "loc20.a2",
        "loc21.a1",
        "loc21.a2",
        "loc22.a1",
        "loc22.a2",
        "loc23.a1",
        "loc23.a2",
        "loc24.a1",
        "loc24.a2",
        "loc25.a1",
        "loc25.a2",
        "loc26.a1",
        "loc26.a2",
        "loc27.a1",
        "loc27.a2",
        "loc28.a1",
        "loc28.a2",
        "loc29.a1",
        "loc29.a2",
        "loc30.a1",
        "loc30.a2",
        "loc31.a1",
        "loc31.a2",
        "loc32.a1",
        "loc32.a2",
        "loc33.a1",
        "loc33.a2",
        "loc34.a1",
        "loc34.a2",
        "loc35.a1",
        "loc35.a2",
        "loc36.a1",
        "loc36.a2",
        "loc37.a1",
        "loc37.a2",
        "loc38.a1",
        "loc38.a2",
        "loc39.a1",
        "loc39.a2",
        "loc40.a1",
        "loc40.a2",
        "loc41.a1",
        "loc41.a2",
        "loc42.a1",
        "loc42.a2",
        "loc43.a1",
        "loc43.a2",
        "loc44.a1",
        "loc44.a2",
        "loc45.a1",
        "loc45.a2",
        "loc46.a1",
        "loc46.a2",
        "loc47.a1",
        "loc47.a2",
        "loc48.a1",
        "loc48.a2",
        "loc49.a1",
        "loc49.a2",
        "loc50.a1",
        "loc50.a2",
        "loc51.a1",
        "loc51.a2",
        "loc52.a1",
        "loc52.a2",
        "loc53.a1",
        "loc53.a2",
        "loc54.a1",
        "loc54.a2",
        "loc55.a1",
        "loc55.a2",
        "loc56.a1",
        "loc56.a2",
        "loc57.a1",
        "loc57.a2",
        "loc58.a1",
        "loc58.a2",
        "loc59.a1",
        "loc59.a2",
        "loc60.a1",
        "loc60.a2",
        "loc61.a1",
        "loc61.a2",
        "loc62.a1",
        "loc62.a2",
        "loc63.a1",
        "loc63.a2",
        "loc64.a1",
        "loc64.a2",
        "loc65.a1",
        "loc65.a2",
        "loc66.a1",
        "loc66.a2",
        "loc67.a1",
        "loc67.a2",
        "loc68.a1",
        "loc68.a2",
        "loc69.a1",
        "loc69.a2",
        "loc70.a1",
        "loc70.a2",
        "loc71.a1",
        "loc71.a2",
        "loc72.a1",
        "loc72.a2",
        "loc73.a1",
        "loc73.a2",
        "loc74.a1",
        "loc74.a2",
        "loc75.a1",
        "loc75.a2",
        "loc76.a1",
        "loc76.a2",
        "loc77.a1",
        "loc77.a2",
        "loc78.a1",
        "loc78.a2",
        "loc79.a1",
        "loc79.a2",
        "loc80.a1",
        "loc80.a2",
        "loc81.a1",
        "loc81.a2",
        "loc82.a1",
        "loc82.a2",
        "loc83.a1",
        "loc83.a2",
        "loc84.a1",
        "loc84.a2",
        "loc85.a1",
        "loc85.a2",
        "loc86.a1",
        "loc86.a2",
        "loc87.a1",
        "loc87.a2",
        "loc88.a1",
        "loc88.a2",
        "loc89.a1",
        "loc89.a2",
        "loc90.a1",
        "loc90.a2",
        "loc91.a1",
        "loc91.a2",
        "loc92.a1",
        "loc92.a2",
        "loc93.a1",
        "loc93.a2",
        "loc94.a1",
        "loc94.a2",
        "loc95.a1",
        "loc95.a2",
        "loc96.a1",
        "loc96.a2",
        "loc97.a1",
        "loc97.a2",
        "loc98.a1",
        "loc98.a2",
        "loc99.a1",
        "loc99.a2",
        "loc100.a1",
        "loc100.a2",
        "loc101.a1",
        "loc101.a2",
        "loc102.a1",
        "loc102.a2",
        "loc103.a1",
        "loc103.a2"
      ],
      "rows": 387,
      "table": true,
      "tojson": true
    },
    {
      "name": "hla",
      "title": "The HLA data",
      "object": "hla",
      "file": "hla.rda",
      "class": [
        "data.frame"
      ],
      "fields": [
        "id",
        "y",
        "DQR.a1",
        "DQR.a2",
        "DQA.a1",
        "DQA.a2",
        "DQB.a1",
        "DQB.a2"
      ],
      "rows": 271,
      "table": true,
      "tojson": true
    },
    {
      "name": "m_psych_embeds",
      "title": "A dataset containing the embeddings matrix of psychological related words",
      "object": "m_psych_embeds",
      "file": "m_psych_embeds.rda",
      "class": [
        "matrix",
        "array"
      ],
      "fields": {},
      "rows": 831,
      "table": true,
      "tojson": true
    },
    {
      "name": "multishapes",
      "title": "A dataset containing clusters of multiple shapes",
      "object": "multishapes",
      "file": "multishapes.rda",
      "class": [
        "data.frame"
      ],
      "fields": [
        "x",
        "y",
        "shape"
      ],
      "rows": 1100,
      "table": true,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "compound",
      "title": "Assignment pipe",
      "topics": [
        "%<>%"
      ]
    },
    {
      "page": "pipe",
      "title": "Pipe",
      "topics": [
        "%>%"
      ]
    },
    {
      "page": "exposition",
      "title": "Exposition pipe",
      "topics": [
        "%$%"
      ]
    },
    {
      "page": "contingency_table",
      "title": "Contingency table",
      "topics": [
        "contingency_table"
      ]
    },
    {
      "page": "cosine_simi",
      "title": "Cosine similarity between vectors and/or matrices.",
      "topics": [
        "cosine_simi"
      ]
    },
    {
      "page": "crohn",
      "title": "Crohn's disease data",
      "topics": [
        "crohn"
      ]
    },
    {
      "page": "dist_matrix",
      "title": "dist_matrix",
      "topics": [
        "dist_matrix"
      ]
    },
    {
      "page": "ensemble_metrics",
      "title": "Compute ensemble metrics",
      "topics": [
        "ensemble_metrics"
      ]
    },
    {
      "page": "ensemble_metrics_bootstrap",
      "title": "Select models based on ensemble metrics",
      "topics": [
        "ensemble_metrics_bootstrap"
      ]
    },
    {
      "page": "ensemble_models",
      "title": "Select best models based on ensemble metrics",
      "topics": [
        "ensemble_models"
      ]
    },
    {
      "page": "fortify_dimred",
      "title": "Fortify a dimension reduction object",
      "topics": [
        "fortify_dimred"
      ]
    },
    {
      "page": "fortify_ica",
      "title": "Get and fortify ICA",
      "topics": [
        "fortify_ica"
      ]
    },
    {
      "page": "fortify_pca",
      "title": "Get and fortify PCA",
      "topics": [
        "fortify_pca"
      ]
    },
    {
      "page": "get_best_kxi",
      "title": "Get best k-Xi model",
      "topics": [
        "get_best_kxi"
      ]
    },
    {
      "page": "ggpairs",
      "title": "Plot multiple axes of a data frame or a fortified dimension reduction.",
      "topics": [
        "ggpairs"
      ]
    },
    {
      "page": "ggplot_kxi_metrics",
      "title": "Ggplot OPTICS k-Xi metrics",
      "topics": [
        "ggplot_kxi_metrics"
      ]
    },
    {
      "page": "ggplot_optics",
      "title": "Ggplot optics",
      "topics": [
        "ggplot_optics"
      ]
    },
    {
      "page": "gtable_kxi_profiles",
      "title": "Gtable OPTICS k-Xi distance profiles",
      "topics": [
        "gtable_kxi_profiles"
      ]
    },
    {
      "page": "hla",
      "title": "The HLA data",
      "topics": [
        "hla"
      ]
    },
    {
      "page": "m_psych_embeds",
      "title": "A dataset containing the embeddings matrix of psychological related words",
      "topics": [
        "m_psych_embeds"
      ]
    },
    {
      "page": "multishapes",
      "title": "A dataset containing clusters of multiple shapes",
      "topics": [
        "multishapes"
      ]
    },
    {
      "page": "nice_palette",
      "title": "Nice palette",
      "topics": [
        "nice_palette"
      ]
    },
    {
      "page": "norm_inprod",
      "title": "norm_inprod",
      "topics": [
        "norm_inprod"
      ]
    },
    {
      "page": "normalize",
      "title": "Matrix normalization",
      "topics": [
        "normalize"
      ]
    },
    {
      "page": "opticskxi",
      "title": "OPTICS k-Xi clustering algorithm",
      "topics": [
        "opticskxi"
      ]
    },
    {
      "page": "opticskxi_pipeline",
      "title": "OPTICS k-Xi models comparison pipeline",
      "topics": [
        "opticskxi_pipeline"
      ]
    },
    {
      "page": "print_vignette_table",
      "title": "Print vignette table",
      "topics": [
        "print_vignette_table"
      ]
    },
    {
      "page": "residuals_table",
      "title": "Residuals table",
      "topics": [
        "residuals_table"
      ]
    },
    {
      "page": "stddev_mean",
      "title": "stddev_mean",
      "topics": [
        "stddev_mean"
      ]
    }
  ],
  "_rundeps": [
    "cli",
    "cpp11",
    "farver",
    "ggplot2",
    "glue",
    "gtable",
    "isoband",
    "labeling",
    "lattice",
    "lifecycle",
    "magrittr",
    "Matrix",
    "R6",
    "RColorBrewer",
    "rlang",
    "S7",
    "scales",
    "vctrs",
    "viridisLite",
    "withr"
  ],
  "_vignettes": [
    {
      "source": "ensemble_metrics.Rnw",
      "filename": "ensemble_metrics.pdf",
      "title": "Ensemble Metrics And Models For Density-Based Clustering",
      "engine": "utils::Sweave",
      "headings": [
        "New developments",
        "Example dataset",
        "Density-based clustering with ensemble metrics",
        "Conclusions"
      ],
      "created": "2025-02-26 18:40:02",
      "modified": "2025-02-26 18:40:02",
      "commits": 1
    },
    {
      "source": "opticskxi.Rnw",
      "filename": "opticskxi.pdf",
      "title": "OPTICS K-Xi Density-Based Clustering",
      "engine": "utils::Sweave",
      "headings": [
        "Introduction",
        "OPTICS k-Xi",
        "Models comparisons by distance-based metrics",
        "Conclusions",
        "Acknowledgements"
      ],
      "created": "2019-07-18 21:30:02",
      "modified": "2026-06-10 14:32:00",
      "commits": 3
    }
  ],
  "_score": 2.778151250383644,
  "_indexed": false,
  "_nocasepkg": "opticskxi",
  "_universes": [
    "cran"
  ],
  "_indexurl": "https://thomaschln.r-universe.dev/opticskxi",
  "_previous": "1.2.1",
  "_binaries": [
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "1.2.2",
      "date": "2026-06-10T15:13:57.000Z",
      "distro": "noble",
      "commit": "72964e3bc9eb8f3d636f42d14f1e4c5cc9e3a64a",
      "fileid": "b0397ca32b224903580c6e26263aea3208bac2ed836698bb68fc8d50c7d819e7",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/27285865735"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "1.2.2",
      "date": "2026-06-10T15:13:43.000Z",
      "distro": "noble",
      "commit": "72964e3bc9eb8f3d636f42d14f1e4c5cc9e3a64a",
      "fileid": "f3b3024618e7c7ca31102956b9a79dc43cbe1f24c1b217c453b0f30a6b23db41",
      "status": "success",
      "check": "OK",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/27285865735"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "1.2.2",
      "date": "2026-06-10T15:13:43.000Z",
      "commit": "72964e3bc9eb8f3d636f42d14f1e4c5cc9e3a64a",
      "fileid": "81d5b34b92eb97265a4aa03b3ba5bebdce3933c82906714a690464ca39d2ccfa",
      "status": "success",
      "buildurl": "https://github.com/r-universe/cran/actions/runs/27285865735"
    }
  ]
}