suprow function

Projections of Supplementary Rows

Projections of Supplementary Rows

This function performs a projection of supplementary rows (i.e. supplementary individuals).

## S3 method for class 'coa' suprow(x, Xsup, ...) ## S3 method for class 'dudi' suprow(x, Xsup, ...) ## S3 method for class 'dudi' predict(object, newdata, ...) ## S3 method for class 'pca' suprow(x, Xsup, ...) ## S3 method for class 'acm' suprow(x, Xsup, ...) ## S3 method for class 'mix' suprow(x, Xsup, ...) ## S3 method for class 'fca' suprow(x, Xsup, ...)

Arguments

  • x, object: an object of class dudi
  • Xsup, newdata: an array with the supplementary rows
  • ...: further arguments passed to or from other methods

Details

If suprow.dudi is used, the column vectors of Xsup are projected without prior modifications onto the principal components of dudi with the scalar product associated to the row weightings of dudi.

Returns

predict returns a data frame containing the coordinates of the supplementary rows. suprow returns a list with the transformed table Xsup in tabsup and the coordinates of the supplementary rows in lisup.

References

Gower, J. C. (1967) Multivariate analysis and multivariate geometry. The statistician, 17 , 13--28.

Author(s)

Daniel Chessel

Anne-Béatrice Dufour anne-beatrice.dufour@univ-lyon1.fr

Examples

data(euro123) par(mfrow = c(2, 2)) w <- euro123[[2]] dudi1 <- dudi.pca(w, scal = FALSE, scan = FALSE) if(adegraphicsLoaded()) { g11 <- s.arrow(dudi1$c1, psub.text = "Classical", psub.posi = "bottomright", plot = FALSE) g12 <- s.label(suprow(dudi1, w)$tabsup, plab.cex = 0.75, plot = FALSE) g1 <- superpose(g11, g12) g21 <- s.arrow(dudi1$c1, psub.text = "Without centring", psub.posi = "bottomright", plot = FALSE) g22 <- s.label(suprow(dudi1, w)$tabsup, plab.cex = 0.75, plot = FALSE) g2 <- superpose(g21, g22) g3 <- triangle.label(w, plab.cex = 0.75, label = row.names(w), adjust = FALSE, plot = FALSE) g4 <- triangle.label(w, plab.cex = 0.75, label = row.names(w), adjust = TRUE, plot = FALSE) G <- ADEgS(list(g1, g2, g3, g4), layout = c(2, 2)) } else { s.arrow(dudi1$c1, sub = "Classical", possub = "bottomright", csub = 2.5) s.label(suprow(dudi1, w), add.plot = TRUE, clab = 0.75) s.arrow(dudi1$c1, sub = "Without centring", possub = "bottomright", csub = 2.5) s.label(suprow(dudi1, w), clab = 0.75, add.plot = TRUE) triangle.plot(w, clab = 0.75, label = row.names(w), scal = FALSE) triangle.plot(w, clab = 0.75, label = row.names(w), scal = TRUE) } data(rpjdl) rpjdl.coa <- dudi.coa(rpjdl$fau, scann = FALSE, nf = 4) rpjdl.coa$li[1:3, ] suprow(rpjdl.coa,rpjdl$fau[1:3, ])$lisup #the same data(deug) deug.dudi <- dudi.pca(df = deug$tab, center = deug$cent, scale = FALSE, scannf = FALSE) suprow(deug.dudi, deug$tab[1:3, ])$lisup #the supplementary individuals are centered deug.dudi$li[1:3, ] # the same
  • Maintainer: Aurélie Siberchicot
  • License: GPL (>= 2)
  • Last published: 2025-02-14