inst/doc/LearnClust.R

## ----setup, include=FALSE-----------------------------------------------------
library(LearnClust)
knitr::opts_chunk$set(collapse = TRUE, comment = "#>")

## -----------------------------------------------------------------------------

cluster1 <- matrix(c(1,2),ncol=2)

cluster2 <- matrix(c(2,4),ncol=2)

weight <- c(0.2,0.8)

vectorData <- c(1,1,2,3,4,7,8,8,8,10)
# vectorData <- c(1:10)

matrixData <- matrix(vectorData,ncol=2,byrow=TRUE)
print(matrixData)

dfData <- data.frame(matrixData)
print(dfData)
plot(dfData)

cMatrix <- matrix(c(2,4,4,2,3,5,1,1,2,2,5,5,1,0,1,1,2,1,2,4,5,1,2,1), ncol=3, byrow=TRUE)

cDataFrame <- data.frame(cMatrix)


## -----------------------------------------------------------------------------
edistance(cluster1,cluster2)

## -----------------------------------------------------------------------------
mdistance(cluster1,cluster2)

## -----------------------------------------------------------------------------
canberradistance(cluster1,cluster2)

## -----------------------------------------------------------------------------
chebyshevDistance(cluster1,cluster2)

## -----------------------------------------------------------------------------
octileDistance(cluster1,cluster2)

## -----------------------------------------------------------------------------
edistanceW(cluster1,cluster2,weight)

## -----------------------------------------------------------------------------
mdistanceW(cluster1,cluster2,weight)

## -----------------------------------------------------------------------------
canberradistanceW(cluster1,cluster2,weight)

## -----------------------------------------------------------------------------
chebyshevDistanceW(cluster1,cluster2,weight)

## -----------------------------------------------------------------------------
octileDistanceW(cluster1,cluster2,weight)

## -----------------------------------------------------------------------------
list <- toList(vectorData)

# list <- toList(matrixData)

# list <- toList(dfData)

print(list)

## -----------------------------------------------------------------------------
matrixDistance <- mdAgglomerative(list,'MAN','AVG')
print(matrixDistance)

## -----------------------------------------------------------------------------
minDistance <- minDistance(matrixDistance)
print(minDistance)

## -----------------------------------------------------------------------------
groupedClusters <- getCluster(minDistance, matrixDistance)
print(groupedClusters)

## -----------------------------------------------------------------------------
updatedClusters <- newCluster(list, groupedClusters)
print(updatedClusters)

## -----------------------------------------------------------------------------
agglomerativeExample <- agglomerativeHC(dfData,'EUC','MAX')

plot(agglomerativeExample$dendrogram)
print(agglomerativeExample$clusters)
print(agglomerativeExample$groupedClusters)

## -----------------------------------------------------------------------------
cleanClusters <- usefulClusters(updatedClusters)
print(cleanClusters)

## -----------------------------------------------------------------------------
distances <- c(2,4,6,8)

clusterDistanceByApproach <- clusterDistanceByApproach(distances,'AVG')
print(clusterDistanceByApproach)

## -----------------------------------------------------------------------------
clusterDistance <- clusterDistance(cluster1,cluster2,'MAX','MAN')
print(clusterDistance)

## -----------------------------------------------------------------------------
list <- toList.details(vectorData)

# list <- toList(matrixData)

# list <- toList(dfData)

print(list)

## -----------------------------------------------------------------------------
matrixDistance <- mdAgglomerative.details(list,'MAN','AVG')

## -----------------------------------------------------------------------------
minDistance <- minDistance.details(matrixDistance)

## -----------------------------------------------------------------------------
groupedClusters <- getCluster.details(minDistance, matrixDistance)

## -----------------------------------------------------------------------------
updatedClusters <- newCluster.details(list, groupedClusters)

## -----------------------------------------------------------------------------
agglomerativeExample <- agglomerativeHC.details(vectorData,'EUC','MAX')

## -----------------------------------------------------------------------------
 # list <- toListDivisive(vectorData)

# list <- toListDivisive(matrixData)

 list <- toListDivisive(dfData[1:4,])

print(list)

## -----------------------------------------------------------------------------
clustersList <- initClusters(list)
print(clustersList)

## -----------------------------------------------------------------------------
matrixDistance <- mdDivisive(clustersList,'MAN','AVG',list)
print(matrixDistance)

## -----------------------------------------------------------------------------
maxDistance <- maxDistance(matrixDistance)
print(maxDistance)

## -----------------------------------------------------------------------------
dividedClusters <- getClusterDivisive(maxDistance, matrixDistance)
print(dividedClusters)

## -----------------------------------------------------------------------------
divisiveExample <- divisiveHC(dfData[1:4,],'MAN','AVG')
print(divisiveExample)

## -----------------------------------------------------------------------------
data <- c(1,2,1,3,1,4,1,5)

components <- toListDivisive(data)

cluster1 <- matrix(c(1,2,1,3),ncol=2,byrow=TRUE)
cluster2 <- matrix(c(1,4,1,5),ncol=2,byrow=TRUE)
cluster3 <- matrix(c(1,6,1,7),ncol=2,byrow=TRUE)

complementaryClusters(components,cluster1,cluster2)

complementaryClusters(components,cluster1,cluster3)


## -----------------------------------------------------------------------------
complementaryClusters.details(components,cluster1,cluster2)

## -----------------------------------------------------------------------------
# list <- toListDivisive.details(vectorData)

# list <- toListDivisive(matrixData)

 list <- toListDivisive(dfData[1:4,])

print(list)

## -----------------------------------------------------------------------------
clustersList <- initClusters.details(list)

## -----------------------------------------------------------------------------
matrixDistance <- mdDivisive.details(clustersList,'MAN','AVG',list)

## -----------------------------------------------------------------------------
maxDistance <- maxDistance.details(matrixDistance)

## -----------------------------------------------------------------------------
dividedClusters <- getClusterDivisive.details(maxDistance, matrixDistance)

## -----------------------------------------------------------------------------
divisiveExample <- divisiveHC.details(dfData[1:4,],'MAN','AVG')
print(divisiveExample)


## -----------------------------------------------------------------------------
initData <- initData(cDataFrame)
print(initData)

## -----------------------------------------------------------------------------
target <- c(1,2,3)

initTarget <- initTarget(target,cDataFrame)
print(initTarget)

## -----------------------------------------------------------------------------
weight <- c(5,7,6)

weights <- normalizeWeight(TRUE,weight,cDataFrame)
print(weights)

## -----------------------------------------------------------------------------
cluster1 <- matrix(c(1,2,3),ncol=3)
cluster2 <- matrix(c(2,5,8),ncol=3)

weight <- c(3,7,4)

distance <- distances(cluster1,cluster2,'CHE',weight)
print(distance)

## -----------------------------------------------------------------------------
target <- c(5,5,1)

weight <- c(3,7,5)

correlation <- correlationHC(cDataFrame, target,  weight)

print(correlation$sortedValues)

print(correlation$distances)

plot(correlation$dendrogram)

## -----------------------------------------------------------------------------
initData <- initData.details(cDataFrame)

## -----------------------------------------------------------------------------
targetValid <- c(1,2,3)

targetInvalid <- c(1,2)

initTarget <- initTarget.details(targetValid,cDataFrame)

initTarget <- initTarget.details(targetInvalid,cDataFrame)

## -----------------------------------------------------------------------------
weight <- c(5,7,6)

weights <- normalizeWeight.details(TRUE,weight,cDataFrame)

weights <- normalizeWeight.details(FALSE,weight,cDataFrame)

weights <- normalizeWeight.details(FALSE,NULL,cDataFrame)

## -----------------------------------------------------------------------------
cluster1 <- matrix(c(1,2,3),ncol=3)
cluster2 <- matrix(c(2,5,8),ncol=3)

weight <- c(3,7,4)

distance <- distances.details(cluster1,cluster2,'CHE',weight)

## -----------------------------------------------------------------------------
target <- c(5,5,1)

weight <- c(3,7,5)

correlation <- correlationHC.details(cDataFrame, target,  weight)

print(correlation$sortedValues)

print(correlation$distances)

plot(correlation$dendrogram)

Try the LearnClust package in your browser

Any scripts or data that you put into this service are public.

LearnClust documentation built on Nov. 30, 2020, 1:09 a.m.