{
  "_id": "6a1a741a1d7bb097a09d13b6",
  "Package": "PPCI",
  "Type": "Package",
  "Title": "Projection Pursuit for Cluster Identification",
  "Version": "0.1.5",
  "Author": "David Hofmeyr <dhofmeyr@sun.ac.za> [aut, cre] Nicos Pavlidis\n<n.pavlidis@lancaster.ac.uk> [aut]",
  "Maintainer": "David Hofmeyr <dhofmeyr@sun.ac.za>",
  "Description": "Implements recently developed projection pursuit\nalgorithms for finding optimal linear cluster separators. The\nclustering algorithms use optimal hyperplane separators based\non minimum density, Pavlidis et. al (2016)\n<https://jmlr.csail.mit.edu/papers/volume17/15-307/15-307.pdf>;\nminimum normalised cut, Hofmeyr (2017)\n<doi:10.1109/TPAMI.2016.2609929>; and maximum variance ratio\nclusterability, Hofmeyr and Pavlidis (2015)\n<doi:10.1109/SSCI.2015.116>.",
  "License": "GPL-3",
  "Encoding": "UTF-8",
  "LazyData": "true",
  "RoxygenNote": "6.1.0",
  "Repository": "https://davidhofmeyr.r-universe.dev",
  "Date/Publication": "2020-03-06 07:03:53 UTC",
  "RemoteUrl": "https://github.com/davidhofmeyr/ppci",
  "RemoteRef": "HEAD",
  "RemoteSha": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
  "NeedsCompilation": "yes",
  "Packaged": {
    "Date": "2026-05-28 14:35:16 UTC",
    "User": "root"
  },
  "MD5sum": "c387f28b61373f98c954f7304366532d",
  "_user": "davidhofmeyr",
  "_type": "src",
  "_file": "PPCI_0.1.5.tar.gz",
  "_fileid": "a07f6a14170045075e1acdf6f6c50987c8eaacd459fd6fd1f02eb3031091749b",
  "_filesize": 9895510,
  "_sha256": "a07f6a14170045075e1acdf6f6c50987c8eaacd459fd6fd1f02eb3031091749b",
  "_created": "2026-05-28T14:35:16.000Z",
  "_published": "2026-05-30T05:22:34.230Z",
  "_distro": "noble",
  "_jobs": [
    {
      "job": 78626255333,
      "time": 168,
      "config": "linux-devel-arm64",
      "r": "4.7.0",
      "check": "WARNING",
      "artifact": "7268802599"
    },
    {
      "job": 78626255279,
      "time": 151,
      "config": "linux-devel-x86_64",
      "r": "4.7.0",
      "check": "WARNING",
      "artifact": "7268795860"
    },
    {
      "job": 78626255363,
      "time": 193,
      "config": "linux-release-arm64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7268812547"
    },
    {
      "job": 78626255287,
      "time": 152,
      "config": "linux-release-x86_64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7268795753"
    },
    {
      "job": 78626255141,
      "time": 108,
      "config": "macos-oldrel-arm64",
      "r": "4.5.3",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 78626255138,
      "time": 223,
      "config": "macos-oldrel-x86_64",
      "r": "4.5.3",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 78626255250,
      "time": 130,
      "config": "macos-release-arm64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7268989964"
    },
    {
      "job": 78626255322,
      "time": 338,
      "config": "macos-release-x86_64",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7268867156"
    },
    {
      "job": 78626255273,
      "time": 218,
      "config": "source",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7268731688"
    },
    {
      "job": 78626255249,
      "time": 116,
      "config": "wasm-release",
      "r": "4.6.0",
      "check": "OK",
      "artifact": "7268777696"
    },
    {
      "job": 78626255355,
      "time": 175,
      "config": "windows-devel",
      "r": "4.7.0",
      "check": "WARNING",
      "artifact": "7268805660"
    },
    {
      "job": 78626255137,
      "time": 57,
      "config": "windows-oldrel",
      "r": "4.5.3",
      "check": "FAIL",
      "artifact": ""
    },
    {
      "job": 78626255334,
      "time": 137,
      "config": "windows-release",
      "r": "4.6.0",
      "check": "WARNING",
      "artifact": "7268789305"
    }
  ],
  "_buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878",
  "_status": "success",
  "_host": "GitHub-Actions",
  "_upstream": "https://github.com/davidhofmeyr/ppci",
  "_commit": {
    "id": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
    "author": "DavidHofmeyr <33575492+DavidHofmeyr@users.noreply.github.com>",
    "committer": "GitHub <noreply@github.com>",
    "message": "Add files via upload",
    "time": 1583478233
  },
  "_maintainer": {
    "name": "David Hofmeyr",
    "email": "dhofmeyr@sun.ac.za"
  },
  "_registered": true,
  "_dependencies": [
    {
      "package": "R",
      "version": ">= 2.10.0",
      "role": "Depends"
    },
    {
      "package": "Rcpp",
      "role": "LinkingTo"
    },
    {
      "package": "RcppArmadillo",
      "role": "LinkingTo"
    },
    {
      "package": "Rcpp",
      "version": ">= 0.12.16",
      "role": "Imports"
    },
    {
      "package": "RcppArmadillo",
      "role": "Imports"
    },
    {
      "package": "rARPACK",
      "role": "Imports"
    }
  ],
  "_owner": "davidhofmeyr",
  "_selfowned": true,
  "_usedby": 0,
  "_updates": [],
  "_tags": [],
  "_stars": 2,
  "_contributors": [
    {
      "user": "davidhofmeyr",
      "count": 77,
      "uuid": 33575492
    }
  ],
  "_userbio": {
    "uuid": 33575492,
    "type": "user",
    "name": "DavidHofmeyr"
  },
  "_downloads": {
    "count": 192,
    "source": "https://cranlogs.r-pkg.org/downloads/total/last-month/PPCI"
  },
  "_devurl": "https://github.com/davidhofmeyr/ppci",
  "_searchresults": 19,
  "_topics": [
    "openblas",
    "cpp"
  ],
  "_rbuild": "4.6.0",
  "_assets": [
    "extra/citation.cff",
    "extra/citation.html",
    "extra/citation.json",
    "extra/citation.txt",
    "extra/contents.json",
    "extra/PPCI.html",
    "extra/readme.html",
    "extra/readme.md",
    "manual.pdf"
  ],
  "_homeurl": "https://github.com/davidhofmeyr/ppci",
  "_realowner": "davidhofmeyr",
  "_cranurl": true,
  "_releases": [
    {
      "version": "0.1.0",
      "date": "2017-11-22"
    },
    {
      "version": "0.1.1",
      "date": "2018-02-16"
    },
    {
      "version": "0.1.2",
      "date": "2018-03-15"
    },
    {
      "version": "0.1.3",
      "date": "2018-10-08"
    },
    {
      "version": "0.1.4",
      "date": "2018-10-25"
    },
    {
      "version": "0.1.5",
      "date": "2020-03-06"
    }
  ],
  "_exports": [
    "add_subtree",
    "cluster_performance",
    "df_mc",
    "df_md",
    "df_md_cpp",
    "df_ncut",
    "dncut_x",
    "f_mc",
    "f_md",
    "f_md_cpp",
    "f_ncut",
    "hp_plot",
    "is_minim",
    "ismin_cpp",
    "mc_b",
    "mcdc",
    "mcdr",
    "mch",
    "mcpp",
    "md_b",
    "md_b_cpp",
    "md_reldepth",
    "mddc",
    "mddr",
    "mdh",
    "mdpp",
    "ncut_b",
    "ncut_x",
    "ncutdc",
    "ncutdr",
    "ncuth",
    "ncutpp",
    "node_plot",
    "norm_vec",
    "optidigits_mean_images",
    "plot.ppci_cluster_solution",
    "plot.ppci_hyperplane_solution",
    "plot.ppci_projection_solution",
    "ppclust.optim",
    "subtree_width",
    "success_ratio",
    "tree_plot",
    "tree_prune",
    "tree_split"
  ],
  "_datasets": [
    {
      "name": "breastcancer",
      "title": "Discrimination of Cancerous and Non-Cancerous Breast Masses",
      "object": "breastcancer",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "dermatology",
      "title": "Eryhemato-Squamous Disease Identification",
      "object": "dermatology",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "optidigits",
      "title": "Optical Recognition of Handwritten Digits",
      "object": "optidigits",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "pendigits",
      "title": "Pen-based Recognition of Handwritten Digits",
      "object": "pendigits",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "phoneme",
      "title": "Speech Recognition through Phoneme Identification",
      "object": "phoneme",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    },
    {
      "name": "yale",
      "title": "Face Recognition",
      "object": "yale",
      "class": [
        "list"
      ],
      "fields": [],
      "table": false,
      "tojson": true
    }
  ],
  "_help": [
    {
      "page": "PPCI-package",
      "title": "Projection Pursuit for Cluster Identification",
      "topics": [
        "PPCI-package",
        "PPCI"
      ]
    },
    {
      "page": "breastcancer",
      "title": "Discrimination of Cancerous and Non-Cancerous Breast Masses",
      "topics": [
        "breastcancer"
      ]
    },
    {
      "page": "cluster_performance",
      "title": "External Cluster Validity Metrics",
      "topics": [
        "cluster_performance"
      ]
    },
    {
      "page": "dermatology",
      "title": "Eryhemato-Squamous Disease Identification",
      "topics": [
        "dermatology"
      ]
    },
    {
      "page": "mcdc",
      "title": "Divisive Clustering Using Maximum Clusterability",
      "topics": [
        "mcdc"
      ]
    },
    {
      "page": "mcdr",
      "title": "Maximum Clusterability Dimension Reduction",
      "topics": [
        "mcdr"
      ]
    },
    {
      "page": "mch",
      "title": "Maximum Clusteriability Hyperplane",
      "topics": [
        "mch"
      ]
    },
    {
      "page": "mddc",
      "title": "Divisive Clustering Using Minimum Density Hyperplanes",
      "topics": [
        "mddc"
      ]
    },
    {
      "page": "mddr",
      "title": "Minimum Density Dimension Reduction",
      "topics": [
        "mddr"
      ]
    },
    {
      "page": "mdh",
      "title": "Minimum Density Hyperplane",
      "topics": [
        "mdh"
      ]
    },
    {
      "page": "ncutdc",
      "title": "Divisive Clustering Using Minimum Normalised Cut Hyperplanes",
      "topics": [
        "ncutdc"
      ]
    },
    {
      "page": "ncutdr",
      "title": "Minimum Normalised Cut Dimension Reduction",
      "topics": [
        "ncutdr"
      ]
    },
    {
      "page": "ncuth",
      "title": "Minimum Normalised Cut Hyperplane",
      "topics": [
        "ncuth"
      ]
    },
    {
      "page": "optidigits",
      "title": "Optical Recognition of Handwritten Digits",
      "topics": [
        "optidigits"
      ]
    },
    {
      "page": "optidigits_mean_images",
      "title": "Visualise Cluster Means from optidigits data set",
      "topics": [
        "optidigits_mean_images"
      ]
    },
    {
      "page": "pendigits",
      "title": "Pen-based Recognition of Handwritten Digits",
      "topics": [
        "pendigits"
      ]
    },
    {
      "page": "phoneme",
      "title": "Speech Recognition through Phoneme Identification",
      "topics": [
        "phoneme"
      ]
    },
    {
      "page": "success_ratio",
      "title": "Evaluate External Valifity os a Binary Partition",
      "topics": [
        "success_ratio"
      ]
    },
    {
      "page": "tree_prune",
      "title": "Prune a Hierarchical Clustering Model",
      "topics": [
        "tree_prune"
      ]
    },
    {
      "page": "tree_split",
      "title": "Split a Leaf in a Hierarchical Clustering Model",
      "topics": [
        "tree_split"
      ]
    },
    {
      "page": "yale",
      "title": "Face Recognition",
      "topics": [
        "yale"
      ]
    }
  ],
  "_readme": "https://github.com/davidhofmeyr/ppci/raw/HEAD/README.md",
  "_rundeps": [
    "lattice",
    "Matrix",
    "rARPACK",
    "Rcpp",
    "RcppArmadillo",
    "RcppEigen",
    "RSpectra"
  ],
  "_sysdeps": [
    {
      "shlib": "libblas",
      "package": "libopenblas0-pthread",
      "source": "openblas",
      "version": "0.3.26+ds-1ubuntu0.1",
      "name": "openblas",
      "homepage": "https://www.openblas.net/",
      "description": "Optimized BLAS (linear algebra) library (shared lib, pthread)"
    },
    {
      "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"
    }
  ],
  "_score": 3.278753600952829,
  "_indexed": true,
  "_nocasepkg": "ppci",
  "_universes": [
    "davidhofmeyr"
  ],
  "_binaries": [
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.5",
      "date": "2026-04-03T05:34:15.000Z",
      "arch": "aarch64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "355678c58d5ead3e43271c1860b5d54a7e58e854134b59ba72ce5aa97d290716",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/23935202591"
    },
    {
      "r": "4.5.3",
      "os": "mac",
      "version": "0.1.5",
      "date": "2026-04-03T05:36:18.000Z",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "808eb432027f69c9520cd7913b471138061a6d1910aa5cf826dd8cba3f909b4f",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/23935202591"
    },
    {
      "r": "4.5.3",
      "os": "win",
      "version": "0.1.5",
      "date": "2026-04-03T05:33:54.000Z",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "ddf2fd8bc7e244a9bfae2f8fb7e65b7d5208e547bd77adc86c0b8c8e5c348b00",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/23935202591"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.5",
      "date": "2026-05-28T14:37:37.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "fee0a8ffc372fd4e4f7bf7b815a6e39aefb0f05e9f42c390a5423b462b7ca0cd",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.7.0",
      "os": "linux",
      "version": "0.1.5",
      "date": "2026-05-28T14:37:34.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "17d936f5b6dbc4a36f15c7fb61e824d3aed35b9707018f37b79410828eda751d",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.1.5",
      "date": "2026-05-28T14:38:01.000Z",
      "distro": "noble",
      "arch": "aarch64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "6d9005c36436d3380690f33e7814eeb773a72f98218e37454f0bf2d4154233ae",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.6.0",
      "os": "linux",
      "version": "0.1.5",
      "date": "2026-05-28T14:37:35.000Z",
      "distro": "noble",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "5b0b55c1717d94be043820c994aa09930c6ca85af3c48e23679f2091a71c79ee",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.1.5",
      "date": "2026-05-28T14:45:24.000Z",
      "arch": "aarch64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "0aa7548b79307de6b4dc4077523de2872651bf381659e40ad22867c0c45249a9",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.6.0",
      "os": "mac",
      "version": "0.1.5",
      "date": "2026-05-28T14:39:42.000Z",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "df77e68a4e783b23b31e842194608b746bfb4a7db1972d899f71aa605afdff4d",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.6.0",
      "os": "wasm",
      "version": "0.1.5",
      "date": "2026-05-28T14:37:30.000Z",
      "arch": "emscripten",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "5647e8786a3623161003f4dc1e73790068afdf3a539dd5b8e7699309e0b5afde",
      "status": "success",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.7.0",
      "os": "win",
      "version": "0.1.5",
      "date": "2026-05-28T14:37:27.000Z",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "7ae608fbca0d4a65f0cf8a6dd1034b1253cefc3d342d054db4b4f3582c12a2c4",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    },
    {
      "r": "4.6.0",
      "os": "win",
      "version": "0.1.5",
      "date": "2026-05-28T14:36:52.000Z",
      "arch": "x86_64",
      "commit": "aa8fa12f6ccac9c0355c7f560c2466e6f3609be1",
      "fileid": "674bc56b80a5aeb062e90d80994ceb9ecbdc08ca649b010d768897411b604d42",
      "status": "success",
      "check": "WARNING",
      "buildurl": "https://github.com/r-universe/davidhofmeyr/actions/runs/26581222878"
    }
  ]
}