R/image_plots.R

Defines functions optidigits_mean_images

Documented in optidigits_mean_images

optidigits_mean_images <- function(clusters){
  op <- par(no.readonly = TRUE)
  T = table(PPCI::optidigits$c, clusters)
  f = function(p) -sum(diag(T[,p[1:min(10, max(clusters))]]))
  df = function(p){
    sm = sample(1:length(p), 2)
    rep1 = p[sm[1]]
    rep2 = p[sm[2]]
    p[sm[2]] = rep1
    p[sm[1]] = rep2
    p
  }
  p = optim(1:max(clusters), f, df, method = 'SANN')$par
  par(mfrow = c(1, max(clusters)))
  for(i in 1:max(clusters)){
    par(mar = c(0, 0, 0, 0))
    image(matrix(colMeans(PPCI::optidigits$x[which(clusters==p[i]),]), 8, 8)[,8:1], col = rgb((1:20)/20, (1:20)/20, (1:20)/20), xaxt = 'n', yaxt = 'n')
  }
  par(op)
}

Try the PPCI package in your browser

Any scripts or data that you put into this service are public.

PPCI documentation built on March 13, 2020, 3:27 a.m.