在R語言中,可以使用一些常用的包進行聚類分析和簇數選擇,比如使用cluster和factoextra包。下面是一個簡單的示例代碼,演示如何進行聚類分析和簇數選擇:
# 導入數據
data <- read.csv("data.csv")
# 進行聚類分析
cluster <- kmeans(data, centers = 3) # 選擇簇數為3
# 可視化聚類結果
library(factoextra)
fviz_cluster(cluster, data = data)
# 選擇最優簇數
library(NbClust)
nb <- NbClust(data, distance = "euclidean", min.nc = 2, max.nc = 10, method = "kmeans")
print(nb)
在上面的代碼中,首先導入數據,然后使用kmeans函數進行聚類分析,并選擇簇數為3。接著使用factoextra包中的fviz_cluster函數可視化聚類結果。最后使用NbClust包進行簇數選擇,通過設置min.nc和max.nc參數指定最小和最大的簇數范圍,然后使用method參數指定聚類方法,這里選擇kmeans方法。最后可以打印輸出結果,選擇最優的簇數。