fc_function(sd) { x1_rmvnorm(10, mu= c(-1, -1), sig=diag(sd, 2)) x2_rmvnorm(10, mu= c(1, -1), sig=diag(sd, 2)) x3_rmvnorm(10, mu= c(-1, 1), sig=diag(sd, 2)) x4_rmvnorm(10, mu= c(1, 1), sig=diag(sd, 2)) x_rbind(x1,x2,x3,x4) init_factor(rep(1:4,rep(10,4))) par(mfrow=c(2,2)) scatter.class(x,init,sub="initial",csub=2) h0_hclust(dist(x),"single") parti_as.factor(cutree(h0,k=4)) scatter.class(x,parti,sub="single",csub=2) h0_hclust(dist(x),"average") parti_as.factor(cutree(h0,k=4)) scatter.class(x,parti,sub="average",csub=2) h0_hclust(dist(x),"complete") parti_as.factor(cutree(h0,k=4)) scatter.class(x,parti,sub="complete",csub=2) } fu_function(sd) { fu1_function(method) { h0_hclust(dist(x),method) parti_as.factor(cutree(h0,k=3)) scatter.class(x,parti,sub=method,csub=2,ylim=c(0,1)) } x1_rnorm(20,m=-2,sd=sd) x2_rnorm(30,m=1,sd=sd) x3_rnorm(10,m=5,sd=sd) y_runif(60) x_cbind(c(x1,x2,x3),y) init_factor(rep(1:3,c(20,30,10))) par(mfrow=c(5,1)) scatter.class(x,init,sub="initial",csub=2) fu1("single") fu1("average") fu1("complete") fu1("ward") }