MyNixOS website logo
Description

Investigating New Projection Pursuit Index Functions.

Projection pursuit is used to find interesting low-dimensional projections of high-dimensional data by optimizing an index over all possible projections. The 'spinebil' package contains methods to evaluate the performance of projection pursuit index functions using tour methods. A paper describing the methods can be found at <doi:10.1007/s00180-020-00954-8>.

spinebil

Studying Projection Pursuit INdex functions through Exploration Based on Interpolated tour paths and Line graphs. spinebil provides functionalities to evaluate the performance of projection pursuit index functions using tour methods as presented in this paper.

Installation

You can install the released version of spinebil from CRAN with:

install.packages("spinebil")

You can install the development version from GitHub with:

# install.packages("devtools")
devtools::install_github("uschiLaa/spinebil")

Example

To evaluate the index behaviour on a known input distribution we can trace its value when interpolating a tour path, for example moving from nuisance and structured projection.

library(spinebil)
## sample from the spiral distribution
d <- spiralData(4, 100)
## the first two parameters are noise
## parameters 3 and 4 contain a spiral
## we write a list with the nuisance and structured plane
m <- list(basisMatrix(1,2,4), basisMatrix(3,4,4))
## the index functions to be evaluated should also be passed in a list
indexList <- list(tourr::holes(), tourr::cmass())
indexLabels <- c("holes", "cmass")
## we can now compute the index traces and plot them
trace <- getTrace(d, m, indexList, indexLabels)
#> target_dist - cur_dist: 0 
#> generation:  dist =   1.03966 
#> target_dist - cur_dist: 1.03966 
#> generation:  dist =   1.533671 
#> target_dist - cur_dist: 0 
#> generation:  dist =   2 
#> target_dist - cur_dist: 0 
#> target_dist - cur_dist: 0 
#> generation:  dist =   2 
#> target_dist - cur_dist: 2 
#> target_dist - cur_dist: 1.95 
#> target_dist - cur_dist: 1.9 
#> target_dist - cur_dist: 1.85 
#> target_dist - cur_dist: 1.8 
#> target_dist - cur_dist: 1.75 
#> target_dist - cur_dist: 1.7 
#> target_dist - cur_dist: 1.65 
#> target_dist - cur_dist: 1.6 
#> target_dist - cur_dist: 1.55 
#> target_dist - cur_dist: 1.5 
#> target_dist - cur_dist: 1.45 
#> target_dist - cur_dist: 1.4 
#> target_dist - cur_dist: 1.35 
#> target_dist - cur_dist: 1.3 
#> target_dist - cur_dist: 1.25 
#> target_dist - cur_dist: 1.2 
#> target_dist - cur_dist: 1.15 
#> target_dist - cur_dist: 1.1 
#> target_dist - cur_dist: 1.05 
#> target_dist - cur_dist: 1 
#> target_dist - cur_dist: 0.95 
#> target_dist - cur_dist: 0.9 
#> target_dist - cur_dist: 0.85 
#> target_dist - cur_dist: 0.8 
#> target_dist - cur_dist: 0.75 
#> target_dist - cur_dist: 0.7 
#> target_dist - cur_dist: 0.65 
#> target_dist - cur_dist: 0.6 
#> target_dist - cur_dist: 0.55 
#> target_dist - cur_dist: 0.5 
#> target_dist - cur_dist: 0.45 
#> target_dist - cur_dist: 0.4 
#> target_dist - cur_dist: 0.35 
#> target_dist - cur_dist: 0.3 
#> target_dist - cur_dist: 0.25 
#> target_dist - cur_dist: 0.2 
#> target_dist - cur_dist: 0.15 
#> target_dist - cur_dist: 0.1 
#> target_dist - cur_dist: 0.05
plotTrace(trace)
Metadata

Version

0.1.6

License

Unknown

Platforms (75)

    Darwin
    FreeBSD
    Genode
    GHCJS
    Linux
    MMIXware
    NetBSD
    none
    OpenBSD
    Redox
    Solaris
    WASI
    Windows
Show all
  • aarch64-darwin
  • aarch64-freebsd
  • aarch64-genode
  • aarch64-linux
  • aarch64-netbsd
  • aarch64-none
  • aarch64-windows
  • aarch64_be-none
  • arm-none
  • armv5tel-linux
  • armv6l-linux
  • armv6l-netbsd
  • armv6l-none
  • armv7a-linux
  • armv7a-netbsd
  • armv7l-linux
  • armv7l-netbsd
  • avr-none
  • i686-cygwin
  • i686-freebsd
  • i686-genode
  • i686-linux
  • i686-netbsd
  • i686-none
  • i686-openbsd
  • i686-windows
  • javascript-ghcjs
  • loongarch64-linux
  • m68k-linux
  • m68k-netbsd
  • m68k-none
  • microblaze-linux
  • microblaze-none
  • microblazeel-linux
  • microblazeel-none
  • mips-linux
  • mips-none
  • mips64-linux
  • mips64-none
  • mips64el-linux
  • mipsel-linux
  • mipsel-netbsd
  • mmix-mmixware
  • msp430-none
  • or1k-none
  • powerpc-netbsd
  • powerpc-none
  • powerpc64-linux
  • powerpc64le-linux
  • powerpcle-none
  • riscv32-linux
  • riscv32-netbsd
  • riscv32-none
  • riscv64-linux
  • riscv64-netbsd
  • riscv64-none
  • rx-none
  • s390-linux
  • s390-none
  • s390x-linux
  • s390x-none
  • vc4-none
  • wasm32-wasi
  • wasm64-wasi
  • x86_64-cygwin
  • x86_64-darwin
  • x86_64-freebsd
  • x86_64-genode
  • x86_64-linux
  • x86_64-netbsd
  • x86_64-none
  • x86_64-openbsd
  • x86_64-redox
  • x86_64-solaris
  • x86_64-windows