Learn R Programming

Anthropometry (version 1.1)

stepArchetypoids: Run the archetypoid algorithm several times

Description

Execute the archetypoid algorithm repeatedly. It is inspired by the stepArchetypes function of the archetypes R package.

Usage

stepArchetypoids(i,nearest,data,ArchObj)

Arguments

i
Number of archetypoids.
nearest
Initial vector of archetypoids for the BUILD phase of the archetypoid algorithm. This argument is a logical value: if TRUE (FALSE), the nearest (which) vector is calculated. Both vectors contain the nearest individuals to the archetypes
data
Data matrix. Each row corresponds to an observation and each column corresponds to an anthropometric variable. All variables are numeric.
ArchObj
The list returned by the stepArchetypesMod function. This function is a slight modification of the original stepArchetypes function of

Value

  • A list with the following elements:

    archet: Final vector of k archetypoids.

    rss: Residual sum of squares corresponding to the final vector of k archetypoids.

    archet_ini: Vector of initial archetypoids (nearest or which).

    alphas: Alpha coefficients for the optimal vector of archetypoids.

References

Vinue, G., Epifanio, I., and Alemany, S., (2014). Archetypoids: a new approach to define representative archetypal data. Submitted for publication.

Cutler, A., and Breiman, L., (1994). Archetypal Analysis, Technometrics 36, 338--347.

Epifanio, I., Vinue, G., and Alemany, S., (2013). Archetypal analysis: contributions for estimating boundary cases in multivariate accommodation problem, Computers & Industrial Engineering 64, 757--765.

Eugster, M. J., and Leisch, F., (2009). From Spider-Man to Hero - Archetypal Analysis in R, Journal of Statistical Software 30, 1--23, http://www.jstatsoft.org/.

Eugster, M. J. A., (2012). Performance profiles based on archetypal athletes, International Journal of Performance Analysis in Sport 12, 166--187.

See Also

archetypoids, archetypes, stepArchetypes

Examples

Run this code
#Cockpit design problem:
m <- dataUSAF
#Variable selection:
sel <- c(48,40,39,33,34,36)
#Changing to inches: 
mpulg <- m[,sel] / (10 * 2.54)

#Data preprocessing:
preproc <- accommodation(mpulg,TRUE,0.95,TRUE)

#Computation of archetypes and archetypoids:
#For reproducing results, seed for randomness:
set.seed(2010) 
#Run archetypes algorithm repeatedly from 1 to numArch archetypes:
numArch <- 10 ; nrep <- 20
lass <- stepArchetypesMod(data=preproc$data,k=1:numArch,verbose=FALSE,nrep=nrep)  

#Run archetypoids algorithm repeatedly from 1 to numArch archetypes:
for(i in 1:numArch){
  temp <-  stepArchetypoids(i,TRUE,preproc$data,lass)
  filename <- paste("res", i, sep="")
  assign(filename,temp)
  save(list=c(filename),file=paste(filename, ".RData", sep="")) 
}  

for(i in 1:numArch){
  temp <-  stepArchetypoids(i,FALSE,preproc$data,lass)
  filename <- paste("res", i, "_which",sep="")
  assign(filename,temp)
  save(list=c(filename),file=paste(filename, ".RData", sep=""))
}

Run the code above in your browser using DataLab