Re: [R] Mental Block with PCA of multivariate time series!

From: Pierre BADY <pierre.bady_at_univ-lyon1.fr>
Date: Mon 16 May 2005 - 20:10:27 EST


Hi all,

You can use the sepan function in the library ade4. Maybe it's a bit difficult but it provides interesting perspectives. This function uses arguments 'ktab' (K-table) which correspond to a list of data frames with the same row.names in common.

?ktab
# example : two propoistions
data(meaudret)
# table
mil <- meaudret$mil
# description of the block
plandat <- as.factor(meaudret$plan$dat)

#-------------------------------
# first proposition:
#-------------------------------

# Ktab preparation
list1 <- NULL
for(i in 1:nlevels(plandat)){
list1[[i]] <-
dudi.pca(meaudret$mil[plandat==levels(plandat)[i],],center=T,scale=T,scannf=F,nf=2) }
ktab1 <- ktab.list.dudi(list1)
# sequential analyses
sepan1 <- sepan(ktab1)
# graphical representations
plot(sepan1)
kplot(sepan1)
#------------------------------------------------------------------------------------
# second proposition: more difficult but more interesting :)
#------------------------------------------------------------------------------------
# within analysis
?within.pca
wit1 <- within.pca(meaudret$mil, meaudret$plan$dat, scan = FALSE,

          scal = "partial")
# Ktab preparation
kta1 <- ktab.within(wit1, colnames = rep(c("S1","S2","S3","S4","S5"), 4)) kta2 <- t(kta1)
# sequential analyses
sepan2 <- sepan(kta2)
# graphical representations
plot(sepan2)
kplot(sepan2)

You can conclude your analysis with specific K-table analyses (e.g. STATIS, MFA, MCOA, GPA). ... it's very funny methods .... :)

hopes this help

Pierre

At 08:32 16/05/2005 +0100, Laura Quinn wrote:
>Please could someone point me in the right direction as I appear to be
>having a total mental block with fairly basic PCA problem!
>
>I have a large dataframe where rows represent independent
>observations and columns are variables. I am wanting to perform PCA
>sequentially on blocks of nrows at a time and produce a graphical output
>of the loadings for the first 2 EOFs for each variable.
>
>I'm sure I've performed a very similar routine in the past, but the method
>is currently escaping me.
>
>Any help gratefully received!
>
>Laura Quinn
>Institute of Atmospheric Science
>School of Earth and Environment
>University of Leeds
>Leeds
>LS2 9JT
>
>tel: +44 113 343 1596
>fax: +44 113 343 6716
>mail: laura@env.leeds.ac.uk
>
>______________________________________________
>R-help@stat.math.ethz.ch mailing list
>https://stat.ethz.ch/mailman/listinfo/r-help
>PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Pierre BADY <°)))))><
Université Claude Bernard Lyon 1
UMR CNRS 5023, LEHF
bat Alphonse Forel
43 boulevard du 11 novembre 1918
F-69622 VILLEURBANNE CEDEX
FRANCE

TEL : +33 (0)4 72 44 62 34
FAX : +33 (0)4 72 43 28 92
MEL : pierre.bady@univ-lyon1.fr
http://pierre.bady.free.fr (in construction)

	[[alternative HTML version deleted]]

______________________________________________
R-help@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html Received on Mon May 16 20:33:50 2005

This archive was generated by hypermail 2.1.8 : Fri 03 Mar 2006 - 03:31:46 EST