# List data types for permute
methods("permute")
# Permute matrix
m <- matrix(rnorm(10), 5, 2, dimnames = list(1:5, LETTERS[1:2]))
m
# Permute rows and columns
o <- ser_permutation(5:1, 2:1)
o
permute(m, o)
## permute only columns
permute(m, o, margin = 2)
## permute using PCA seriation
permute(m, "PCA")
## permute only rows using PCA
permute(m, "PCA", margin = 1)
# Permute data.frames using heatmap seration (= hierarchical
# clustering + optimal leaf ordering)
df <- as.data.frame(m)
permute(df, "Heatmap")
# Permute objects in a dist object
d <- dist(m)
d
permute(d, c(3, 2, 1, 4, 5))
permute(d, "Spectral")
# Permute a list
l <- list(a = 1:5, b = letters[1:3], c = 0)
l
permute(l, c(2, 3, 1))
# Permute to reorder dendrogram (see also reorder.hclust)
hc <- hclust(d)
plot(hc)
plot(permute(hc, 5:1))
plot(permute(hc, 5:1, incompartible = "stop"))
plot(permute(hc, "OLO", dist = d))
plot(permute(hc, "GW", dist = d))
plot(permute(hc, "MDS", dist = d))
plot(permute(hc, "TSP", dist = d))
Run the code above in your browser using DataLab