orthobasis {ade4}R Documentation

Orthonormal basis for orthonormal transform

Description

These functions returns object of class 'orthobasis' that contains data frame with n rows and n-1 columns. Each data frame defines an orthonormal basis for the uniform weights.

orthobasic.neig returns the eigen vectors of the matrix N-M where M is the symmetric n by n matrix of the between-sites neighbouring graph and N is the diagonal matrix of neighbour numbers.
orthobasis.line returns the analytical solution for the linear neighbouring graph.
orthobasic.circ returns the analytical solution for the circular neighbouring graph.
orthobsic.mat returns the eigen vectors of the general link matrix M.
orthobasis.listw returns the eigen vectors of the general link matrix M associated to a listw object.
orthobasis.haar returns wavelet haar basis.

Usage

orthobasis.neig(neig)
orthobasis.line(n)
orthobasis.circ(n)
orthobasis.mat(mat, cnw=TRUE)
orthobasis.listw(listw)
orthobasis.haar(n)
## S3 method for class 'orthobasis':
print(x,...)

Arguments

neig is an object of class neig
n is an integer that defines length of vectors
mat is a n by n phylogenetic or spatial link matrix
listw is a 'listw' object
cnw if TRUE, the matrix of the neighbouring graph is modified to give Constant Neighbouring Weights
x is an object of class orthobasis
... : further arguments passed to or from other methods

Value

All the functions excepted print.ortobasis return an object of class orthobasis containing a data frame. This data frame defines an orthonormal basis with n-1 vectors of length n. Various attributes are associated to it :
names : names of the vectors
row.names : row names of the data frame
class : class
values : row weights (uniform weights)
weights : numeric values to class vectors according to their quadratic forms (Moran ones)
call : call

Note

the function orthobasis.haar uses function wavelet.filter from package waveslim.

Author(s)

Sébastien Ollier ollier@biomserv.univ-lyon1.fr
Daniel Chessel

References

Misiti, M., Misiti, Y., Oppenheim, G. and Poggi, J.M. (1993) Analyse de signaux classiques par décomposition en ondelettes. Revue de Statistique Appliquée, 41, 5–32.

Cornillon, P.A. (1998) Prise en compte de proximités en analyse factorielle et comparative. Thèse, Ecole Nationale Supérieure Agronomique, Montpellier.

See Also

gridrowcol that defines an orthobasis for square grid, phylog that defines an orthobasis for phylogenetic tree, orthogram and mld

Examples


# a 2D spatial orthobasis
par(mfrow = c(4,4))
w <- gridrowcol(8,8)
 for (k in 1:16)
    s.value(w$xy, w$orthobasis[,k], cleg = 0, csi = 2, incl = FALSE,
     addax = FALSE, sub = k, csub = 4, ylim = c(0,10), cgri = 0)
par(mfrow = c(1,1))
barplot(attr(w$orthobasis, "values"))

# Haar 1D orthobasis
w <- orthobasis.haar(32)
par(mfrow = c(8,4))
par(mar = c(0.1,0.1,0.1,0.1))
 for (k in 1:31) {
    plot(w[,k], type="S",xlab = "", ylab = "", xaxt = "n",
     yaxt = "n", xaxs = "i", yaxs = "i",ylim=c(-4.5,4.5))
    points(w[,k], type = "p", pch = 20, cex = 1.5)
}

# a 1D orthobasis
w <- orthobasis.line(n = 33)
par(mfrow = c(8,4))
par(mar = c(0.1,0.1,0.1,0.1))
 for (k in 1:32) {
    plot(w[,k], type="l",xlab = "", ylab = "", xaxt = "n",
     yaxt = "n", xaxs = "i", yaxs = "i",ylim=c(-1.5,1.5))
    points(w[,k], type = "p", pch = 20, cex = 1.5)
}

par(mfrow = c(1,1))
barplot(attr(w, "values"))

w <- orthobasis.circ(n = 26)
#par(mfrow = c(5,5))
#par(mar = c(0.1,0.1,0.1,0.1))
# for (k in 1:25) 
#    dotcircle(w[,k], xlim = c(-1.5,1.5), cleg = 0)

par(mfrow = c(1,1))
#barplot(attr(w, "values"))

## Not run: 
# a spatial orthobasis
data(mafragh)
w <- orthobasis.neig(mafragh$neig)
par(mfrow = c(4,2))
for (k in 1:8)
    s.value(mafragh$xy, w[,k],cleg = 0, sub = as.character(k),
     csub = 3)

par(mfrow = c(1,1))
barplot(attr(w, "values"))

# a phylogenetic orthobasis
data(njplot)
phy <- newick2phylog(njplot$tre)
wA <- phy$Ascores
wW <- phy$Wscores
table.phylog(phylog = phy, wA, clabel.row = 0, clabel.col  = 0.5)
table.phylog(phylog = phy, wW, clabel.row = 0, clabel.col  = 0.5)


## End(Not run)

Worked out examples


> library(ade4)
> ### Name: orthobasis
> ### Title: Orthonormal basis for orthonormal transform
> ### Aliases: orthobasis orthobasis.neig orthobasis.line orthobasis.circ
> ###   orthobasis.mat orthobasis.listw orthobasis.haar print.orthobasis
> ### Keywords: spatial ts
> 
> ### ** Examples
> 
> 
> # a 2D spatial orthobasis
> par(mfrow = c(4,4))
> w <- gridrowcol(8,8)
>  for (k in 1:16)
+     s.value(w$xy, w$orthobasis[,k], cleg = 0, csi = 2, incl = FALSE,
+      addax = FALSE, sub = k, csub = 4, ylim = c(0,10), cgri = 0)
> par(mfrow = c(1,1))
> barplot(attr(w$orthobasis, "values"))
> 
> # Haar 1D orthobasis
> w <- orthobasis.haar(32)
> par(mfrow = c(8,4))
> par(mar = c(0.1,0.1,0.1,0.1))
>  for (k in 1:31) {
+     plot(w[,k], type="S",xlab = "", ylab = "", xaxt = "n",
+      yaxt = "n", xaxs = "i", yaxs = "i",ylim=c(-4.5,4.5))
+     points(w[,k], type = "p", pch = 20, cex = 1.5)
+ }
> 
> # a 1D orthobasis
> w <- orthobasis.line(n = 33)
> par(mfrow = c(8,4))
> par(mar = c(0.1,0.1,0.1,0.1))
>  for (k in 1:32) {
+     plot(w[,k], type="l",xlab = "", ylab = "", xaxt = "n",
+      yaxt = "n", xaxs = "i", yaxs = "i",ylim=c(-1.5,1.5))
+     points(w[,k], type = "p", pch = 20, cex = 1.5)
+ }
> 
> par(mfrow = c(1,1))
> barplot(attr(w, "values"))
> 
> w <- orthobasis.circ(n = 26)
> #par(mfrow = c(5,5))
> #par(mar = c(0.1,0.1,0.1,0.1))
> # for (k in 1:25) 
> #    dotcircle(w[,k], xlim = c(-1.5,1.5), cleg = 0)
> 
> par(mfrow = c(1,1))
> #barplot(attr(w, "values"))
> 
>  
> # a spatial orthobasis
> data(mafragh)
> w <- orthobasis.neig(mafragh$neig)
> par(mfrow = c(4,2))
> for (k in 1:8)
+     s.value(mafragh$xy, w[,k],cleg = 0, sub = as.character(k),
+      csub = 3)
> 
> par(mfrow = c(1,1))
> barplot(attr(w, "values"))
> 
> # a phylogenetic orthobasis
> data(njplot)
> phy <- newick2phylog(njplot$tre)
> wA <- phy$Ascores
> wW <- phy$Wscores
> table.phylog(phylog = phy, wA, clabel.row = 0, clabel.col  = 0.5)
> table.phylog(phylog = phy, wW, clabel.row = 0, clabel.col  = 0.5)
> 
> 
> 
> 
> 

[Package ade4 Index]