Closed youngroklee-ml closed 9 months ago
R scripts return several errors. The script may also have several typos.
k.max
fviz_nbclust()
db
pam_out
dat2
dat1
dist()
# Ch12.5 How to choose k # Non-hierachical clustering ### # read csv file dat1 <- read.csv("data/ch12_dat2.csv") dat2 <- dat1[, -1] # 1. Euclidean distance D1 <- dist(dat2) D1 <- round(D1, 2) D1 #> 1 2 3 4 5 6 7 #> 2 16.12 #> 3 2.24 17.00 #> 4 18.60 9.06 18.36 #> 5 13.15 5.00 14.56 13.15 #> 6 5.66 12.17 5.39 13.04 10.82 #> 7 15.30 1.41 16.03 8.00 5.39 11.05 #> 8 16.64 7.28 16.55 2.24 11.05 11.18 6.08 # step1: to choose the optimal k library(factoextra) #> Loading required package: ggplot2 #> Welcome! Want to learn more? See two factoextra-related books at https://goo.gl/ve3WBa fviz_nbclust(dat1, kmeans, method = "wss") #> Error: number of cluster centres must lie between 1 and nrow(x) fviz_nbclust(dat1, kmeans, method = "gap_stat") #> Error: number of cluster centres must lie between 1 and nrow(x) fviz_nbclust(dat1, kmeans, method = "silhouette") #> Error: number of cluster centres must lie between 1 and nrow(x) # visualization fviz_cluster(db, data = dat2, ellipse.type = "convex", repel = TRUE ) #> Error in eval(expr, envir, enclos): object 'db' not found # calculate silhouette library(cluster) sil_pam <- silhouette(pam_out$clustering, dist(dat1)) #> Error in eval(expr, envir, enclos): object 'pam_out' not found sil_pam #> Error in eval(expr, envir, enclos): object 'sil_pam' not found mean(sil_pam[, 3]) #> Error in eval(expr, envir, enclos): object 'sil_pam' not found sil_db <- silhouette(db$cluster, dist(dat1)) #> Error in eval(expr, envir, enclos): object 'db' not found mean(sil_db[, 3]) #> Error in eval(expr, envir, enclos): object 'sil_db' not found # plot silhouette library(factoextra) fviz_silhouette(sil_pam) #> Error in eval(expr, envir, enclos): object 'sil_pam' not found fviz_silhouette(sil_db) #> Error in eval(expr, envir, enclos): object 'sil_db' not found
Created on 2024-01-17 with reprex v2.1.0
This should have been fixed by #3
R scripts return several errors. The script may also have several typos.
k.max
argument forfviz_nbclust()
db
,pam_out
dat2
instead ofdat1
as an argument forfviz_nbclust()
anddist()
Created on 2024-01-17 with reprex v2.1.0