# Create a Silhouette object
cluster_assignments <- c(1, 1, 2, 2, 3, 3)
neighbor_clusters <- c(2, 2, 1, 1, 1, 1)
silhouette_widths <- c(0.8, 0.7, 0.6, 0.9, 0.5, 0.4)
sil_obj <- getSilhouette(
cluster = cluster_assignments,
neighbor = neighbor_clusters,
sil_width = silhouette_widths,
proximity_type = "dissimilarity",
method = "medoid",
average = "crisp"
)
# Test if object is Silhouette
is.Silhouette(sil_obj) # TRUE
is.Silhouette(sil_obj, strict = TRUE) # TRUE
# Test with non-Silhouette objects
is.Silhouette(data.frame(a = 1, b = 2)) # FALSE
is.Silhouette(matrix(1:10, ncol = 2)) # FALSE
is.Silhouette(list(a = 1, b = 2)) # FALSE
is.Silhouette(NULL) # FALSE
Run the code above in your browser using DataLab