??lexicalMeasures help (lexicalMeasures) lexicalMeasures[1:5, 1:6] lexicalMeasures.cor = cor(lexicalMeasures[, -1]) lexicalMeasures.cor[1:5, 1:5] cor.test(lexicalMeasures$CelS, lexicalMeasures$Ient) (lexicalMeasures.cor^2)[1:5, 1:5] lexicalMeasures.cor = cor(lexicalMeasures[ ,-1], method="spearman")^2 lexicalMeasures.cor[1:5, 1:5] lexicalMeasures.dist = dist(lexicalMeasures.cor) lexicalMeasures.clust = hclust(lexicalMeasures.dist) plclust(lexicalMeasures.clust) library(cluster) pltree(diana(lexicalMeasures.dist)) cutree(diana(lexicalMeasures.dist), 5) x = data.frame(measure = rownames(lexicalMeasures.cor),cluster = cutree(diana(lexicalMeasures.dist), 5),class = lexicalMeasuresClasses$Class) x = x[order(x$cluster), ] x phylogeny[1:5, 1:5] phylogeny.dist = dist(phylogeny[ ,3:ncol(phylogeny)], method = "binary") plotnames = as.character(phylogeny$Language) plotnames[phylogeny$Family == "Papuan"] = toupper(plotnames[phylogeny$Family == "Papuan"]) library(cluster) plot(diana(dist(phylogeny[ , 3:ncol(phylogeny)], method = "binary")), labels = plotnames, cex = 0.8, main = " ", xlab = "aa", which.plot = 2) library(ape) phylogeny.dist.tr = nj(phylogeny.dist) families = as.character (phylogeny$Family[as.numeric(phylogeny.dist.tr$tip.label)]) languages = as.character (phylogeny$Language[as.numeric(phylogeny.dist.tr$tip.label)]) phylogeny.dist.tr$tip.label = languages plot(phylogeny.dist.tr, type = "u", font = as.numeric(as.factor(families))) papuan = phylogeny[phylogeny$Family == "Papuan", ] papuan$Language = as.factor(as.character(papuan$Language)) papuan.meta = papuan[ , 1:2] papuan.mat = papuan[ , 3:ncol(papuan)] papuan.meta$Geography = c("Bougainville", "Bismarck Archipelago", "Bougainville", "Bismarck Archipelago", "Bismarck Archipelago", "Central Solomons", "Bougainville", "Louisiade Archipelago", "Bougainville", "Bismarck Archipelago", "Bismarck Archipelago", "Bismarck Archipelago", "Central Solomons", "Central Solomons", "Central Solomons") papuan.dist = dist(papuan.mat, method = "binary") papuan.dist.tr = nj(papuan.dist) fonts = as.character(papuan.meta$Geography[as.numeric(papuan.dist.tr$tip.label)]) papuan.dist.tr$tip.label = as.character (papuan.meta$Language[as.numeric(papuan.dist.tr$tip.label)]) plot(papuan.dist.tr, type = "u", font = as.numeric(as.factor(fonts))) B = 200 btr = list() length(btr) = B for (i in 1:B){ trB = nj(dist(papuan.mat[ ,sample(ncol(papuan.mat), replace = TRUE)], method = "binary")) trB$tip.label = as.character(papuan.meta$Language[as.numeric(trB$tip.label)]) btr[[i]] = trB } props = prop.clades(papuan.dist.tr, btr)/B props plot(papuan.dist.tr, type = "u", font = as.numeric(as.factor(fonts))) nodelabels(thermo = props, piecol = c("black", "grey")) btr.consensus = consensus(btr, p = 0.5) x = btr.consensus$tip.label x x = data.frame(Language = x, Node = 1:length(x)) x = merge(x, papuan.meta, by.x = "Language", by.y = "Language") head(x) x = x[order(x$Node), ] x$Geography = as.factor(x$Geography) plot(btr.consensus, type = "u", font = as.numeric(x$Geography))