Rev 8466 | Blame | Compare with Previous | Last modification | View Log | Download | RSS feed
R version 4.4.1 Patched (2024-09-30 r87205) -- "Race for Your Life"Copyright (C) 2024 The R Foundation for Statistical ComputingPlatform: x86_64-pc-linux-gnuR is free software and comes with ABSOLUTELY NO WARRANTY.You are welcome to redistribute it under certain conditions.Type 'license()' or 'licence()' for distribution details.R is a collaborative project with many contributors.Type 'contributors()' for more information and'citation()' on how to cite R or R packages in publications.Type 'demo()' for some demos, 'help()' for on-line help, or'help.start()' for an HTML browser interface to help.Type 'q()' to quit R.> ## IGNORE_RDIFF_BEGIN> .libPaths() # show full library tree {also as check of R CMD check!}[1] "/tmp/RtmpeWFqQT/RLIBS_28dee75f47fb34"[2] "/u/maechler/R/D/r-patched/F38-64-inst/library"> ## IGNORE_RDIFF_END> library(cluster)>> ####---------- Tests for FANNY i.e., fanny() --------------------------> ####> ### -- thanks to ../.Rbuildignore , the output of this is> ### -- only compared to saved values for the maintainer>> ###--- An extension of example(fanny) : -------------------> set.seed(21)> ## generate 10+15 objects in two clusters, plus 3 objects lying> ## between those clusters.> x <- rbind(cbind(rnorm(10, 0, 0.5), rnorm(10, 0, 0.5)),+ cbind(rnorm(15, 5, 0.5), rnorm(15, 5, 0.5)),+ cbind(rnorm( 3,3.2,0.5), rnorm( 3,3.2,0.5)))>> .proctime00 <- proc.time()>> (fannyx <- fanny(x, 2))Fuzzy Clustering object of class 'fanny' :m.ship.expon. 2objective 14.17769tolerance 1e-15iterations 9converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2][1,] 89 11[2,] 95 5[3,] 92 8[4,] 94 6[5,] 89 11[6,] 93 7[7,] 92 8[8,] 93 7[9,] 95 5[10,] 96 4[11,] 5 95[12,] 7 93[13,] 4 96[14,] 7 93[15,] 5 95[16,] 6 94[17,] 10 90[18,] 5 95[19,] 4 96[20,] 8 92[21,] 8 92[22,] 4 96[23,] 6 94[24,] 6 94[25,] 12 88[26,] 40 60[27,] 22 78[28,] 29 71Fuzzyness coefficients:dunn_coeff normalized0.8436121 0.6872242Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> summary(fannyx)Fuzzy Clustering object of class 'fanny' :m.ship.expon. 2objective 14.17769tolerance 1e-15iterations 9converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2][1,] 89 11[2,] 95 5[3,] 92 8[4,] 94 6[5,] 89 11[6,] 93 7[7,] 92 8[8,] 93 7[9,] 95 5[10,] 96 4[11,] 5 95[12,] 7 93[13,] 4 96[14,] 7 93[15,] 5 95[16,] 6 94[17,] 10 90[18,] 5 95[19,] 4 96[20,] 8 92[21,] 8 92[22,] 4 96[23,] 6 94[24,] 6 94[25,] 12 88[26,] 40 60[27,] 22 78[28,] 29 71Fuzzyness coefficients:dunn_coeff normalized0.8436121 0.6872242Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2Silhouette plot information:cluster neighbor sil_width10 1 2 0.88038739 1 2 0.87269482 1 2 0.86248264 1 2 0.85694748 1 2 0.84469167 1 2 0.83799226 1 2 0.82606553 1 2 0.82181391 1 2 0.80181545 1 2 0.777814422 2 1 0.862246519 2 1 0.852609411 2 1 0.852456213 2 1 0.852185018 2 1 0.847433915 2 1 0.847321716 2 1 0.843043623 2 1 0.839180524 2 1 0.838791412 2 1 0.832684614 2 1 0.829332920 2 1 0.818738821 2 1 0.817393717 2 1 0.795187425 2 1 0.771817827 2 1 0.644452128 2 1 0.532190226 2 1 0.3304049Average silhouette width per cluster:[1] 0.8382705 0.7781928Average silhouette width of total data set:[1] 0.7996491378 dissimilarities, summarized :Min. 1st Qu. Median Mean 3rd Qu. Max.0.07909 1.03510 2.98900 3.88190 6.89260 8.44010Metric : euclideanNumber of objects : 28Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> str(fannyx)List of 11$ membership : num [1:28, 1:2] 0.889 0.953 0.916 0.937 0.891 ...$ coeff : Named num [1:2] 0.844 0.687..- attr(*, "names")= chr [1:2] "dunn_coeff" "normalized"$ memb.exp : num 2$ clustering : int [1:28] 1 1 1 1 1 1 1 1 1 1 ...$ k.crisp : num 2$ objective : Named num [1:2] 1.42e+01 1.00e-15..- attr(*, "names")= chr [1:2] "objective" "tolerance"$ convergence: Named int [1:3] 9 1 500..- attr(*, "names")= chr [1:3] "iterations" "converged" "maxit"$ diss : 'dissimilarity' num [1:378] 1.523 0.987 1.602 1.584 1.903 .....- attr(*, "Size")= int 28..- attr(*, "Metric")= chr "euclidean"$ call : language fanny(x = x, k = 2)$ silinfo :List of 3..$ widths : num [1:28, 1:3] 1 1 1 1 1 1 1 1 1 1 ..... ..- attr(*, "dimnames")=List of 2.. .. ..$ : chr [1:28] "10" "9" "2" "4" ..... .. ..$ : chr [1:3] "cluster" "neighbor" "sil_width"..$ clus.avg.widths: num [1:2] 0.838 0.778..$ avg.width : num 0.8$ data : num [1:28, 1:2] 0.397 0.261 0.873 -0.636 1.099 ...- attr(*, "class")= chr [1:2] "fanny" "partition"> ## Different platforms differ (even gcc 3.0.1 vs 3.2 on same platform)!> ## {70 or 71 iterations}> ## ==> No "fanny-ex.Rout.save" is distributed !> ## --------------------------------------------> ## IGNORE_RDIFF_BEGIN> summary(fanny(x,3))# one extra clusterFuzzy Clustering object of class 'fanny' :m.ship.expon. 2objective 9.39325tolerance 1e-15iterations 45converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2] [,3][1,] 80 10 11[2,] 91 4 5[3,] 84 8 9[4,] 88 5 6[5,] 79 10 12[6,] 86 7 8[7,] 86 7 8[8,] 87 6 7[9,] 91 4 5[10,] 93 3 4[11,] 3 55 43[12,] 3 72 25[13,] 3 41 57[14,] 4 61 35[15,] 2 75 23[16,] 3 54 42[17,] 5 37 58[18,] 3 38 60[19,] 2 38 59[20,] 4 66 30[21,] 4 41 55[22,] 2 61 37[23,] 3 73 24[24,] 4 58 38[25,] 7 43 50[26,] 22 31 47[27,] 11 32 58[28,] 15 33 52Fuzzyness coefficients:dunn_coeff normalized0.5864035 0.3796053Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 3 2 2 2 3 3 3 2 3 2 2 2 3 3 3 3Silhouette plot information:cluster neighbor sil_width10 1 3 0.867616369 1 3 0.859276902 1 3 0.846371414 1 3 0.842634768 1 3 0.828271337 1 3 0.821916336 1 3 0.805152513 1 3 0.800773801 1 3 0.781740305 1 3 0.7487729123 2 3 0.6938105715 2 3 0.6879099412 2 3 0.6811323320 2 3 0.6024355424 2 3 0.5370314422 2 3 0.5152805914 2 3 0.4946778411 2 3 0.4796283116 2 3 0.4784450427 3 2 0.3488172728 3 2 0.3361605126 3 2 0.3238980417 3 2 -0.0252320821 3 2 -0.1644014025 3 2 -0.2103929818 3 2 -0.2119223619 3 2 -0.2677306513 3 2 -0.29006339Average silhouette width per cluster:[1] 0.82025266 0.57448351 -0.01787412Average silhouette width of total data set:[1] 0.4718575378 dissimilarities, summarized :Min. 1st Qu. Median Mean 3rd Qu. Max.0.07909 1.03510 2.98900 3.88190 6.89260 8.44010Metric : euclideanNumber of objects : 28Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> ## IGNORE_RDIFF_END>> ## CRAN-relevant M1 mac: aarch64-apple-darwin24.1.0 / Apple clang version 16.0.0 (clang-1600.0.26.6) / macOS Sequoia 15.1.1> ## IGNORE_RDIFF_BEGIN> (fanny(x,2, memb.exp = 1.5))Fuzzy Clustering object of class 'fanny' :m.ship.expon. 1.5objective 16.08227tolerance 1e-15iterations 10converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2][1,] 99 1[2,] 100 0[3,] 99 1[4,] 100 0[5,] 98 2[6,] 99 1[7,] 99 1[8,] 99 1[9,] 100 0[10,] 100 0[11,] 0 100[12,] 1 99[13,] 0 100[14,] 1 99[15,] 0 100[16,] 0 100[17,] 1 99[18,] 0 100[19,] 0 100[20,] 1 99[21,] 1 99[22,] 0 100[23,] 0 100[24,] 0 100[25,] 2 98[26,] 26 74[27,] 6 94[28,] 12 88Fuzzyness coefficients:dunn_coeff normalized0.9635331 0.9270661Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> ## IGNORE_RDIFF_END> (fanny(x,2, memb.exp = 1.2))Fuzzy Clustering object of class 'fanny' :m.ship.expon. 1.2objective 16.49219tolerance 1e-15iterations 7converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2][1,] 100 0[2,] 100 0[3,] 100 0[4,] 100 0[5,] 100 0[6,] 100 0[7,] 100 0[8,] 100 0[9,] 100 0[10,] 100 0[11,] 0 100[12,] 0 100[13,] 0 100[14,] 0 100[15,] 0 100[16,] 0 100[17,] 0 100[18,] 0 100[19,] 0 100[20,] 0 100[21,] 0 100[22,] 0 100[23,] 0 100[24,] 0 100[25,] 0 100[26,] 5 95[27,] 0 100[28,] 0 100Fuzzyness coefficients:dunn_coeff normalized0.9964339 0.9928679Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> (fanny(x,2, memb.exp = 1.1))Fuzzy Clustering object of class 'fanny' :m.ship.expon. 1.1objective 16.51151tolerance 1e-15iterations 5converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2][1,] 100 0[2,] 100 0[3,] 100 0[4,] 100 0[5,] 100 0[6,] 100 0[7,] 100 0[8,] 100 0[9,] 100 0[10,] 100 0[11,] 0 100[12,] 0 100[13,] 0 100[14,] 0 100[15,] 0 100[16,] 0 100[17,] 0 100[18,] 0 100[19,] 0 100[20,] 0 100[21,] 0 100[22,] 0 100[23,] 0 100[24,] 0 100[25,] 0 100[26,] 0 100[27,] 0 100[28,] 0 100Fuzzyness coefficients:dunn_coeff normalized0.9998489 0.9996979Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> (fanny(x,2, memb.exp = 3))Fuzzy Clustering object of class 'fanny' :m.ship.expon. 3objective 8.844693tolerance 1e-15iterations 11converged 1maxit 500n 28Membership coefficients (in %, rounded):[,1] [,2][1,] 73 27[2,] 82 18[3,] 76 24[4,] 79 21[5,] 74 26[6,] 78 22[7,] 77 23[8,] 79 21[9,] 81 19[10,] 82 18[11,] 18 82[12,] 21 79[13,] 18 82[14,] 22 78[15,] 19 81[16,] 20 80[17,] 26 74[18,] 19 81[19,] 18 82[20,] 23 77[21,] 23 77[22,] 16 84[23,] 21 79[24,] 21 79[25,] 28 72[26,] 46 54[27,] 36 64[28,] 40 60Fuzzyness coefficients:dunn_coeff normalized0.6516764 0.3033528Closest hard clustering:[1] 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> ## for subsetting, when compairing:> not.conv <- setdiff(names(fannyx), c("convergence", "call"))> notMconv <- setdiff(names(fannyx), c("membership", "convergence", "call"))>> data(ruspini) # < to run under R 1.9.1> summary(fanny(ruspini, 3), digits = 9)Fuzzy Clustering object of class 'fanny' :m.ship.expon. 2objective 719.5606tolerance 1e-15iterations 21converged 1maxit 500n 75Membership coefficients (in %, rounded):[,1] [,2] [,3]1 68 13 192 73 12 153 76 10 144 73 14 135 69 11 206 80 9 117 64 20 168 79 10 119 83 7 1010 85 7 911 82 9 1012 82 8 1013 78 11 1214 81 7 1215 77 8 1516 81 7 1217 70 10 2018 79 8 1319 78 8 1420 73 12 1521 17 74 1022 14 78 823 12 80 824 14 78 825 10 83 626 9 86 527 10 84 628 11 83 629 14 77 830 14 78 831 11 83 732 8 87 533 8 87 534 8 87 535 8 88 536 9 86 637 8 86 538 9 86 639 9 85 640 11 82 741 20 68 1242 13 78 943 13 78 944 22 61 1745 27 52 2146 33 39 2847 35 38 2848 35 39 2649 26 53 2250 27 50 2451 25 53 2252 26 51 2353 25 54 2154 27 48 2455 28 45 2756 28 44 2757 27 47 2658 26 49 2459 28 46 2760 28 44 2861 15 8 7762 12 6 8263 13 8 7964 11 5 8365 8 4 8866 11 6 8367 7 4 8968 14 7 7969 8 4 8970 7 3 9071 7 3 8972 11 5 8373 11 6 8374 12 6 8175 13 6 81Fuzzyness coefficients:dunn_coeff normalized0.6045235 0.4067852Closest hard clustering:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 261 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 227 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 522 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 253 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 752 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 3 3 3 3Silhouette plot information:cluster neighbor sil_width10 1 3 0.80560966 1 3 0.79549779 1 3 0.792304811 1 3 0.78316728 1 3 0.782324612 1 3 0.76581713 1 3 0.758796114 1 3 0.75691074 1 3 0.75320512 1 3 0.745615016 1 3 0.743601813 1 3 0.739884118 1 3 0.708007915 1 3 0.700685419 1 3 0.70009381 1 3 0.67983815 1 3 0.664657120 1 3 0.66196267 1 2 0.643785317 1 3 0.614854139 2 1 0.628329538 2 1 0.626272140 2 1 0.625549243 2 1 0.624331936 2 1 0.622153035 2 1 0.617854837 2 1 0.612160542 2 1 0.608811944 2 1 0.606653832 2 1 0.605226034 2 1 0.595839131 2 1 0.595453733 2 1 0.589927926 2 1 0.589097953 2 1 0.584636451 2 1 0.578510549 2 1 0.573435225 2 1 0.569195552 2 1 0.558487227 2 1 0.557441928 2 1 0.547880523 2 1 0.545712658 2 1 0.544325750 2 1 0.543188954 2 1 0.533836324 2 1 0.528256745 2 1 0.524907157 2 1 0.523784522 2 1 0.515089359 2 3 0.501585030 2 1 0.497334055 2 1 0.494978629 2 1 0.489951956 2 3 0.485679041 2 1 0.481684660 2 3 0.476635021 2 1 0.465807946 2 1 0.313853747 2 1 0.232990148 2 1 0.227524970 3 1 0.854894767 3 1 0.852743965 3 1 0.850310569 3 1 0.839181071 3 1 0.838106566 3 1 0.822984162 3 1 0.815309264 3 1 0.806125473 3 1 0.795021363 3 1 0.779536972 3 1 0.774812161 3 1 0.770110368 3 1 0.762055974 3 1 0.759681575 3 1 0.7425538Average silhouette width per cluster:[1] 0.7298309 0.5361094 0.8042285Average silhouette width of total data set:[1] 0.64139232775 dissimilarities, summarized :Min. 1st Qu. Median Mean 3rd Qu. Max.1.414 40.106 75.591 71.538 99.169 154.500Metric : euclideanNumber of objects : 75Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> summary(fanny(ruspini, 4), digits = 9)# 'correct' #{clusters}Fuzzy Clustering object of class 'fanny' :m.ship.expon. 2objective 422.8389tolerance 1e-15iterations 12converged 1maxit 500n 75Membership coefficients (in %, rounded):[,1] [,2] [,3] [,4]1 66 10 9 152 71 9 8 113 76 7 6 104 69 11 9 115 68 9 8 156 80 7 6 87 57 18 13 138 76 9 7 99 85 5 4 710 86 4 4 611 78 7 6 812 78 7 7 913 72 10 9 1014 82 5 5 815 76 6 6 1116 81 5 5 917 68 8 8 1618 77 6 6 1119 75 7 7 1120 65 11 11 1421 10 74 10 622 7 80 8 423 6 82 8 424 8 79 9 525 5 87 6 326 4 89 5 227 4 87 5 328 5 85 6 329 8 78 9 530 8 79 9 531 6 81 9 432 3 89 5 233 4 87 6 334 5 84 7 335 4 87 6 336 5 83 8 437 6 79 10 438 7 76 12 539 7 78 11 440 8 71 15 641 16 49 25 1042 12 57 23 843 12 55 25 844 10 23 59 845 10 16 65 846 17 18 51 1547 20 20 44 1748 21 21 42 1649 4 7 85 450 4 6 87 451 5 8 83 452 3 5 88 353 6 11 78 554 4 5 88 355 6 7 82 556 6 8 80 657 4 6 85 458 7 11 76 659 7 10 77 760 8 11 74 861 12 6 8 7462 9 5 6 7963 11 6 9 7464 8 4 5 8365 6 3 3 8866 9 4 6 8167 5 2 3 9168 12 5 6 7769 5 2 3 8970 4 2 3 9171 5 2 3 8972 10 4 5 8173 10 5 7 7974 11 5 7 7675 12 5 6 77Fuzzyness coefficients:dunn_coeff normalized0.6237448 0.4983264Closest hard clustering:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 261 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 227 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 522 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 3 353 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 753 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4Silhouette plot information:cluster neighbor sil_width10 1 4 0.80560966 1 4 0.79549779 1 4 0.792304811 1 4 0.78316728 1 2 0.781179312 1 4 0.76581713 1 4 0.758796114 1 4 0.75691072 1 4 0.745615016 1 4 0.743601813 1 4 0.73988414 1 2 0.736153318 1 4 0.708007915 1 4 0.700685419 1 4 0.70009381 1 4 0.67983815 1 4 0.664657120 1 4 0.661962617 1 4 0.61485417 1 2 0.590057526 2 3 0.835743332 2 3 0.833275327 2 3 0.829027125 2 3 0.828554728 2 3 0.819263635 2 3 0.818630933 2 3 0.817508723 2 3 0.808996922 2 3 0.802538934 2 3 0.801331031 2 3 0.794967736 2 3 0.794353624 2 3 0.793077029 2 3 0.789734630 2 3 0.789202721 2 3 0.769802437 2 3 0.768450239 2 3 0.763164838 2 3 0.743884840 2 3 0.708313042 2 3 0.529127043 2 3 0.493162341 2 3 0.429081454 3 2 0.774174557 3 2 0.770345555 3 2 0.764181050 3 2 0.761994352 3 2 0.761622056 3 2 0.757531359 3 2 0.732782849 3 2 0.731700251 3 2 0.720986460 3 2 0.720684058 3 2 0.701961153 3 2 0.677532245 3 2 0.597478746 3 2 0.574082347 3 2 0.483563548 3 2 0.424733144 3 2 0.419609370 4 1 0.854894767 4 1 0.852743965 4 1 0.850310569 4 1 0.839181071 4 1 0.838106566 4 1 0.822984162 4 1 0.815309264 4 1 0.806125473 4 1 0.795021363 4 1 0.779536972 4 1 0.774812161 4 1 0.770110368 4 1 0.762055974 4 1 0.759681575 4 1 0.7425538Average silhouette width per cluster:[1] 0.7262347 0.7548344 0.6691154 0.8042285Average silhouette width of total data set:[1] 0.7376572775 dissimilarities, summarized :Min. 1st Qu. Median Mean 3rd Qu. Max.1.414 40.106 75.591 71.538 99.169 154.500Metric : euclideanNumber of objects : 75Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data"> summary(fanny(ruspini, 5), digits = 9)Fuzzy Clustering object of class 'fanny' :m.ship.expon. 2objective 344.054tolerance 1e-15iterations 30converged 1maxit 500n 75Membership coefficients (in %, rounded):[,1] [,2] [,3] [,4] [,5]1 60 10 10 8 132 65 9 9 7 103 71 7 7 6 94 60 11 11 8 105 63 8 8 7 146 74 7 7 5 77 47 16 16 10 118 68 8 9 6 89 81 4 4 4 610 83 4 4 4 511 72 7 7 6 812 72 7 7 6 813 64 9 10 8 914 79 5 5 4 715 73 6 6 5 1016 78 5 5 5 817 64 7 8 7 1418 73 6 6 6 1019 71 6 7 6 1020 58 10 11 9 1221 5 60 26 6 322 4 67 23 4 223 4 65 25 4 224 4 62 26 5 325 3 68 25 3 226 3 61 31 3 227 3 69 24 3 228 3 64 27 4 229 4 63 25 5 330 4 61 27 5 331 4 47 41 6 332 3 48 44 4 233 3 43 48 4 234 3 35 56 4 235 3 36 56 4 236 3 34 56 5 237 3 26 64 5 238 3 24 65 5 239 4 30 58 6 240 5 31 53 8 341 10 28 41 15 642 6 26 51 12 443 6 25 50 13 444 8 17 24 44 745 9 14 18 52 746 14 15 18 41 1247 16 16 20 34 1448 17 17 21 32 1349 4 6 8 78 450 4 5 7 82 351 4 7 9 76 452 3 5 6 84 353 6 9 12 69 554 3 4 6 84 355 5 6 7 77 556 5 7 8 75 557 4 5 6 82 358 6 9 11 69 559 6 8 10 71 660 7 9 11 67 761 12 6 6 7 6962 9 5 5 6 7563 11 6 6 8 6964 8 4 4 4 8065 5 3 3 3 8666 8 4 5 6 7767 4 2 2 2 8968 11 5 5 6 7369 5 2 2 3 8870 4 2 2 3 8971 5 2 2 3 8772 9 4 4 5 7873 9 5 5 6 7574 11 5 6 7 7175 11 5 5 6 73Fuzzyness coefficients:dunn_coeff normalized0.5114030 0.3892538Closest hard clustering:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 261 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 2 2 2 2 2 227 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 522 2 2 2 2 2 3 3 3 3 3 3 3 3 3 3 3 4 4 4 4 4 4 4 4 453 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 754 4 4 4 4 4 4 4 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5Silhouette plot information:cluster neighbor sil_width10 1 5 0.805609596 1 5 0.795497689 1 5 0.7923047611 1 5 0.783167188 1 2 0.7789897012 1 5 0.765817093 1 5 0.7587961214 1 5 0.756910672 1 5 0.7456150016 1 5 0.7436018313 1 5 0.739884104 1 2 0.7312940618 1 5 0.7080078615 1 5 0.7006854019 1 5 0.700093841 1 5 0.679838085 1 5 0.6646571120 1 5 0.6619626117 1 5 0.614854127 1 2 0.5793384422 2 3 0.6469279523 2 3 0.6155054124 2 3 0.6000800325 2 3 0.5887075521 2 3 0.5868047629 2 3 0.5756268027 2 3 0.5363065430 2 3 0.5089969028 2 3 0.4760343726 2 3 0.4546817031 2 3 0.2216443832 2 3 0.1765222043 3 2 0.4563666042 3 2 0.4553445438 3 2 0.4538864737 3 2 0.3792951339 3 2 0.2879244440 3 2 0.2715648641 3 2 0.2670003734 3 2 0.1327481936 3 2 0.1304963435 3 2 0.0386490733 3 2 -0.1046602654 4 3 0.7414025657 4 3 0.7397266355 4 3 0.7341032256 4 3 0.7273285050 4 3 0.7255923652 4 3 0.7245093859 4 3 0.7000431160 4 3 0.6877199649 4 3 0.6872963451 4 3 0.6747858658 4 3 0.6615518953 4 3 0.6236461445 4 3 0.5249929846 4 3 0.5218700647 4 3 0.4230550148 4 3 0.3552012044 4 3 0.2888202870 5 1 0.8548947067 5 1 0.8527439265 5 1 0.8503105169 5 1 0.8391809971 5 1 0.8381064766 5 1 0.8229840762 5 1 0.8153092064 5 1 0.8061254373 5 1 0.7950213063 5 1 0.7795368772 5 1 0.7748121261 5 1 0.7701102968 5 1 0.7620559474 5 1 0.7596814775 5 1 0.74255385Average silhouette width per cluster:[1] 0.7253463 0.4989865 0.2516923 0.6200968 0.8042285Average silhouette width of total data set:[1] 0.61157942775 dissimilarities, summarized :Min. 1st Qu. Median Mean 3rd Qu. Max.1.414 40.106 75.591 71.538 99.169 154.500Metric : euclideanNumber of objects : 75Available components:[1] "membership" "coeff" "memb.exp" "clustering" "k.crisp"[6] "objective" "convergence" "diss" "call" "silinfo"[11] "data">> cat('Time elapsed: ', proc.time() - .proctime00,'\n')Time elapsed: 0.042 0.008 0.052 0 0> data(chorSub)> p4cl <- pam(chorSub, k = 4, cluster.only = TRUE)> ## The first two are "completely fuzzy" -- and now give a warnings> ## IGNORE_RDIFF_BEGIN> f4.20 <- fanny(chorSub, k = 4, trace.lev = 1)fanny()'s fuzzy(n = 61, k = 4):fuzzy(): initial obj = 8277.57Converged after 44 iterations, obj = 2665.982fanny()'s caddy(*, k = 4):-> k_true (crisp) = 2 < k (= 4) !!Warning message:In fanny(chorSub, k = 4, trace.lev = 1) :the memberships are all very close to 1/k. Maybe decrease 'memb.exp' ?> f4.20$coefdunn_coeff normalized2.500000e-01 3.330669e-15> ## IGNORE_RDIFF_END> stopifnot(exprs = {+ all.equal(f4.20$coef, c(dunn_coeff = 0.25, normalized = 3.330669e-15))+ all.equal(f4.20$objective[["objective"]], 2665.982, tol = 8e-7)+ all.equal(f4.20$silinfo$avg.width, 0.250643, tol = 2e-6)+ })>> f4.18 <- fanny(chorSub, k = 4, memb.exp = 1.8) # same problemWarning message:In fanny(chorSub, k = 4, memb.exp = 1.8) :the memberships are all very close to 1/k. Maybe decrease 'memb.exp' ?> f4.18. <- fanny(chorSub, k = 4, memb.exp = 1.8,+ iniMem.p = f4.20$membership) # very quick convergenceWarning message:In fanny(chorSub, k = 4, memb.exp = 1.8, iniMem.p = f4.20$membership) :the memberships are all very close to 1/k. Maybe decrease 'memb.exp' ?> stopifnot(all.equal(f4.18[not.conv], f4.18.[not.conv], tol = 5e-7))>> f4.16 <- fanny(chorSub, k = 4, memb.exp = 1.6) # now gives 4 crisp clusters> ## IGNORE_RDIFF_BEGIN> f4.16. <- fanny(chorSub, k = 4, memb.exp = 1.6,+ iniMem.p = f4.18$membership, trace.lev = 2)# wrongly "converged" immediately; no longer!fanny()'s fuzzy(n = 61, k = 4):fuzzy(): initial obj = 4641.75ef[]= ( 15405.8, 15405.8, 15405.8, 15405.8)esp[]= ( 6.63795, 6.63795, 6.63795, 6.63795)m == n: obj = 4641.7451124068 not converged: it = 1m == n: obj = 4641.7451124068 not converged: it = 2m == n: obj = 4641.7451124067 not converged: it = 3m == n: obj = 4641.7451124067 not converged: it = 4m == n: obj = 4641.7451124066 not converged: it = 5m == n: obj = 4641.7451124065 not converged: it = 6m == n: obj = 4641.7451124064 not converged: it = 7m == n: obj = 4641.7451124062 not converged: it = 8m == n: obj = 4641.7451124059 not converged: it = 9m == n: obj = 4641.7451124055 not converged: it = 10m == n: obj = 4641.7451124048 not converged: it = 11m == n: obj = 4641.7451124038 not converged: it = 12m == n: obj = 4641.7451124024 not converged: it = 13m == n: obj = 4641.7451124002 not converged: it = 14m == n: obj = 4641.7451123969 not converged: it = 15m == n: obj = 4641.7451123920 not converged: it = 16m == n: obj = 4641.7451123848 not converged: it = 17m == n: obj = 4641.7451123740 not converged: it = 18m == n: obj = 4641.7451123580 not converged: it = 19m == n: obj = 4641.7451123342 not converged: it = 20m == n: obj = 4641.7451122987 not converged: it = 21m == n: obj = 4641.7451122458 not converged: it = 22m == n: obj = 4641.7451121672 not converged: it = 23m == n: obj = 4641.7451120502 not converged: it = 24m == n: obj = 4641.7451118760 not converged: it = 25m == n: obj = 4641.7451116168 not converged: it = 26m == n: obj = 4641.7451112310 not converged: it = 27m == n: obj = 4641.7451106568 not converged: it = 28m == n: obj = 4641.7451098021 not converged: it = 29m == n: obj = 4641.7451085301 not converged: it = 30m == n: obj = 4641.7451066368 not converged: it = 31m == n: obj = 4641.7451038188 not converged: it = 32m == n: obj = 4641.7450996246 not converged: it = 33m == n: obj = 4641.7450933819 not converged: it = 34m == n: obj = 4641.7450840901 not converged: it = 35m == n: obj = 4641.7450702597 not converged: it = 36m == n: obj = 4641.7450496738 not converged: it = 37m == n: obj = 4641.7450190318 not converged: it = 38m == n: obj = 4641.7449734207 not converged: it = 39m == n: obj = 4641.7449055260 not converged: it = 40m == n: obj = 4641.7448044581 not converged: it = 41m == n: obj = 4641.7446540036 not converged: it = 42m == n: obj = 4641.7444300216 not converged: it = 43m == n: obj = 4641.7440965647 not converged: it = 44m == n: obj = 4641.7436001025 not converged: it = 45m == n: obj = 4641.7428609171 not converged: it = 46m == n: obj = 4641.7417602891 not converged: it = 47m == n: obj = 4641.7401214217 not converged: it = 48m == n: obj = 4641.7376810561 not converged: it = 49m == n: obj = 4641.7340472856 not converged: it = 50m == n: obj = 4641.7286369629 not converged: it = 51m == n: obj = 4641.7205831038 not converged: it = 52m == n: obj = 4641.7085985379 not converged: it = 53m == n: obj = 4641.6907766285 not converged: it = 54m == n: obj = 4641.6643034513 not converged: it = 55m == n: obj = 4641.6250499545 not converged: it = 56m == n: obj = 4641.5670118398 not converged: it = 57m == n: obj = 4641.4815802745 not converged: it = 58m == n: obj = 4641.3566816476 not converged: it = 59m == n: obj = 4641.1759631584 not converged: it = 60m == n: obj = 4640.9184870127 not converged: it = 61m == n: obj = 4640.5598748380 not converged: it = 62m == n: obj = 4640.0763951643 not converged: it = 63m == n: obj = 4639.4535091538 not converged: it = 64m == n: obj = 4638.6985627477 not converged: it = 65m == n: obj = 4637.8525223026 not converged: it = 66m == n: obj = 4636.9902717889 not converged: it = 67m == n: obj = 4636.2011348287 not converged: it = 68m == n: obj = 4635.5562138862 not converged: it = 69m == n: obj = 4635.0841061959 not converged: it = 70m == n: obj = 4634.7709393872 not converged: it = 71m == n: obj = 4634.5791836454 not converged: it = 72m == n: obj = 4634.4681223189 not converged: it = 73m == n: obj = 4634.4053264338 not converged: it = 74m == n: obj = 4634.3691581286 not converged: it = 75m == n: obj = 4634.3467429052 not converged: it = 76m == n: obj = 4634.3309831621 not converged: it = 77m == n: obj = 4634.3181561250 not converged: it = 78m == n: obj = 4634.3063657101 not converged: it = 79m == n: obj = 4634.2946565359 not converged: it = 80m == n: obj = 4634.2825420462 not converged: it = 81m == n: obj = 4634.2697644380 not converged: it = 82m == n: obj = 4634.2561761591 not converged: it = 83m == n: obj = 4634.2416826439 not converged: it = 84m == n: obj = 4634.2262151364 not converged: it = 85m == n: obj = 4634.2097180825 not converged: it = 86m == n: obj = 4634.1921435378 not converged: it = 87m == n: obj = 4634.1734489659 not converged: it = 88m == n: obj = 4634.1535967048 not converged: it = 89m == n: obj = 4634.1325542860 not converged: it = 90m == n: obj = 4634.1102952171 not converged: it = 91m == n: obj = 4634.0868000400 not converged: it = 92m == n: obj = 4634.0620575623 not converged: it = 93m == n: obj = 4634.0360661965 not converged: it = 94m == n: obj = 4634.0088353517 not converged: it = 95m == n: obj = 4633.9803868188 not converged: it = 96m == n: obj = 4633.9507560809 not converged: it = 97m == n: obj = 4633.9199934721 not converged: it = 98m == n: obj = 4633.8881650953 not converged: it = 99m == n: obj = 4633.8553534087 not converged: it = 100m == n: obj = 4633.8216573862 not converged: it = 101m == n: obj = 4633.7871921716 not converged: it = 102m == n: obj = 4633.7520881605 not converged: it = 103m == n: obj = 4633.7164894758 not converged: it = 104m == n: obj = 4633.6805518354 not converged: it = 105m == n: obj = 4633.6444398582 not converged: it = 106m == n: obj = 4633.6083238934 not converged: it = 107m == n: obj = 4633.5723765040 not converged: it = 108m == n: obj = 4633.5367687642 not converged: it = 109m == n: obj = 4633.5016665539 not converged: it = 110m == n: obj = 4633.4672270359 not converged: it = 111m == n: obj = 4633.4335954897 not converged: it = 112m == n: obj = 4633.4009026493 not converged: it = 113m == n: obj = 4633.3692626504 not converged: it = 114m == n: obj = 4633.3387716507 not converged: it = 115m == n: obj = 4633.3095071322 not converged: it = 116m == n: obj = 4633.2815278568 not converged: it = 117m == n: obj = 4633.2548744046 not converged: it = 118m == n: obj = 4633.2295702011 not converged: it = 119m == n: obj = 4633.2056229217 not converged: it = 120m == n: obj = 4633.1830261616 not converged: it = 121m == n: obj = 4633.1617612597 not converged: it = 122m == n: obj = 4633.1417991795 not converged: it = 123m == n: obj = 4633.1231023655 not converged: it = 124m == n: obj = 4633.1056265122 not converged: it = 125m == n: obj = 4633.0893221975 not converged: it = 126m == n: obj = 4633.0741363541 not converged: it = 127m == n: obj = 4633.0600135613 not converged: it = 128m == n: obj = 4633.0468971544 not converged: it = 129m == n: obj = 4633.0347301568 not converged: it = 130m == n: obj = 4633.0234560452 not converged: it = 131m == n: obj = 4633.0130193623 not converged: it = 132m == n: obj = 4633.0033661946 not converged: it = 133m == n: obj = 4632.9944445330 not converged: it = 134m == n: obj = 4632.9862045316 not converged: it = 135m == n: obj = 4632.9785986833 not converged: it = 136m == n: obj = 4632.9715819245 not converged: it = 137m == n: obj = 4632.9651116845 not converged: it = 138m == n: obj = 4632.9591478893 not converged: it = 139m == n: obj = 4632.9536529294 not converged: it = 140m == n: obj = 4632.9485916022 not converged: it = 141m == n: obj = 4632.9439310334 not converged: it = 142m == n: obj = 4632.9396405840 not converged: it = 143m == n: obj = 4632.9356917488 not converged: it = 144m == n: obj = 4632.9320580478 not converged: it = 145m == n: obj = 4632.9287149149 not converged: it = 146m == n: obj = 4632.9256395866 not converged: it = 147m == n: obj = 4632.9228109913 not converged: it = 148m == n: obj = 4632.9202096409 not converged: it = 149m == n: obj = 4632.9178175259 not converged: it = 150m == n: obj = 4632.9156180154 not converged: it = 151m == n: obj = 4632.9135957603 not converged: it = 152m == n: obj = 4632.9117366027 not converged: it = 153m == n: obj = 4632.9100274892 not converged: it = 154m == n: obj = 4632.9084563902 not converged: it = 155m == n: obj = 4632.9070122233 not converged: it = 156m == n: obj = 4632.9056847824 not converged: it = 157m == n: obj = 4632.9044646710 not converged: it = 158m == n: obj = 4632.9033432401 not converged: it = 159m == n: obj = 4632.9023125305 not converged: it = 160m == n: obj = 4632.9013652195 not converged: it = 161m == n: obj = 4632.9004945707 not converged: it = 162m == n: obj = 4632.8996943886 not converged: it = 163m == n: obj = 4632.8989589752 not converged: it = 164m == n: obj = 4632.8982830915 not converged: it = 165m == n: obj = 4632.8976619203 not converged: it = 166m == n: obj = 4632.8970910330 not converged: it = 167m == n: obj = 4632.8965663585 not converged: it = 168m == n: obj = 4632.8960841547 not converged: it = 169m == n: obj = 4632.8956409819 not converged: it = 170m == n: obj = 4632.8952336787 not converged: it = 171m == n: obj = 4632.8948593394 not converged: it = 172m == n: obj = 4632.8945152937 not converged: it = 173m == n: obj = 4632.8941990874 not converged: it = 174m == n: obj = 4632.8939084654 not converged: it = 175m == n: obj = 4632.8936413550 not converged: it = 176m == n: obj = 4632.8933958517 not converged: it = 177m == n: obj = 4632.8931702052 not converged: it = 178m == n: obj = 4632.8929628073 not converged: it = 179m == n: obj = 4632.8927721801 not converged: it = 180m == n: obj = 4632.8925969653 not converged: it = 181m == n: obj = 4632.8924359151 not converged: it = 182m == n: obj = 4632.8922878825 not converged: it = 183m == n: obj = 4632.8921518138 not converged: it = 184m == n: obj = 4632.8920267405 not converged: it = 185m == n: obj = 4632.8919117727 not converged: it = 186m == n: obj = 4632.8918060926 not converged: it = 187m == n: obj = 4632.8917089487 not converged: it = 188m == n: obj = 4632.8916196505 not converged: it = 189m == n: obj = 4632.8915375633 not converged: it = 190m == n: obj = 4632.8914621038 not converged: it = 191m == n: obj = 4632.8913927362 not converged: it = 192m == n: obj = 4632.8913289678 not converged: it = 193m == n: obj = 4632.8912703460 not converged: it = 194m == n: obj = 4632.8912164548 not converged: it = 195m == n: obj = 4632.8911669118 not converged: it = 196m == n: obj = 4632.8911213658 not converged: it = 197m == n: obj = 4632.8910794937 not converged: it = 198m == n: obj = 4632.8910409987 not converged: it = 199m == n: obj = 4632.8910056082 not converged: it = 200m == n: obj = 4632.8909730713 not converged: it = 201m == n: obj = 4632.8909431577 not converged: it = 202m == n: obj = 4632.8909156555 not converged: it = 203m == n: obj = 4632.8908903701 not converged: it = 204m == n: obj = 4632.8908671226 not converged: it = 205m == n: obj = 4632.8908457484 not converged: it = 206m == n: obj = 4632.8908260965 not converged: it = 207m == n: obj = 4632.8908080279 not converged: it = 208m == n: obj = 4632.8907914148 not converged: it = 209m == n: obj = 4632.8907761399 not converged: it = 210m == n: obj = 4632.8907620952 not converged: it = 211m == n: obj = 4632.8907491815 not converged: it = 212m == n: obj = 4632.8907373077 not converged: it = 213m == n: obj = 4632.8907263899 not converged: it = 214m == n: obj = 4632.8907163510 not converged: it = 215m == n: obj = 4632.8907071202 not converged: it = 216m == n: obj = 4632.8906986324 not converged: it = 217m == n: obj = 4632.8906908277 not converged: it = 218m == n: obj = 4632.8906836511 not converged: it = 219m == n: obj = 4632.8906770519 not converged: it = 220m == n: obj = 4632.8906709837 not converged: it = 221m == n: obj = 4632.8906654037 not converged: it = 222m == n: obj = 4632.8906602726 not converged: it = 223m == n: obj = 4632.8906555542 not converged: it = 224m == n: obj = 4632.8906512153 not converged: it = 225m == n: obj = 4632.8906472254 not converged: it = 226m == n: obj = 4632.8906435563 not converged: it = 227m == n: obj = 4632.8906401822 not converged: it = 228m == n: obj = 4632.8906370794 not converged: it = 229m == n: obj = 4632.8906342261 not converged: it = 230m == n: obj = 4632.8906316021 not converged: it = 231m == n: obj = 4632.8906291891 not converged: it = 232m == n: obj = 4632.8906269700 not converged: it = 233m == n: obj = 4632.8906249293 not converged: it = 234m == n: obj = 4632.8906230526 not converged: it = 235m == n: obj = 4632.8906213267 not converged: it = 236m == n: obj = 4632.8906197395 not converged: it = 237m == n: obj = 4632.8906182798 not converged: it = 238m == n: obj = 4632.8906169374 not converged: it = 239m == n: obj = 4632.8906157028 not converged: it = 240m == n: obj = 4632.8906145675 not converged: it = 241m == n: obj = 4632.8906135233 not converged: it = 242m == n: obj = 4632.8906125630 not converged: it = 243m == n: obj = 4632.8906116798 not converged: it = 244m == n: obj = 4632.8906108675 not converged: it = 245m == n: obj = 4632.8906101205 not converged: it = 246m == n: obj = 4632.8906094335 not converged: it = 247m == n: obj = 4632.8906088016 not converged: it = 248m == n: obj = 4632.8906082205 not converged: it = 249m == n: obj = 4632.8906076860 not converged: it = 250m == n: obj = 4632.8906071945 not converged: it = 251m == n: obj = 4632.8906067424 not converged: it = 252m == n: obj = 4632.8906063266 not converged: it = 253m == n: obj = 4632.8906059441 not converged: it = 254m == n: obj = 4632.8906055924 not converged: it = 255m == n: obj = 4632.8906052689 not converged: it = 256m == n: obj = 4632.8906049714 not converged: it = 257m == n: obj = 4632.8906046977 not converged: it = 258m == n: obj = 4632.8906044460 not converged: it = 259m == n: obj = 4632.8906042145 not converged: it = 260m == n: obj = 4632.8906040016 not converged: it = 261m == n: obj = 4632.8906038058 not converged: it = 262m == n: obj = 4632.8906036257 not converged: it = 263m == n: obj = 4632.8906034600 not converged: it = 264m == n: obj = 4632.8906033076 not converged: it = 265m == n: obj = 4632.8906031675 not converged: it = 266m == n: obj = 4632.8906030386 not converged: it = 267m == n: obj = 4632.8906029200 not converged: it = 268m == n: obj = 4632.8906028110 not converged: it = 269m == n: obj = 4632.8906027106 not converged: it = 270m == n: obj = 4632.8906026184 not converged: it = 271m == n: obj = 4632.8906025335 not converged: it = 272m == n: obj = 4632.8906024555 not converged: it = 273m == n: obj = 4632.8906023837 not converged: it = 274m == n: obj = 4632.8906023176 not converged: it = 275m == n: obj = 4632.8906022569 not converged: it = 276m == n: obj = 4632.8906022010 not converged: it = 277m == n: obj = 4632.8906021496 not converged: it = 278m == n: obj = 4632.8906021024 not converged: it = 279m == n: obj = 4632.8906020589 not converged: it = 280m == n: obj = 4632.8906020189 not converged: it = 281m == n: obj = 4632.8906019821 not converged: it = 282m == n: obj = 4632.8906019483 not converged: it = 283m == n: obj = 4632.8906019171 not converged: it = 284m == n: obj = 4632.8906018885 not converged: it = 285m == n: obj = 4632.8906018622 not converged: it = 286m == n: obj = 4632.8906018379 not converged: it = 287m == n: obj = 4632.8906018157 not converged: it = 288m == n: obj = 4632.8906017952 not converged: it = 289m == n: obj = 4632.8906017763 not converged: it = 290m == n: obj = 4632.8906017590 not converged: it = 291m == n: obj = 4632.8906017430 not converged: it = 292m == n: obj = 4632.8906017284 not converged: it = 293m == n: obj = 4632.8906017149 not converged: it = 294m == n: obj = 4632.8906017025 not converged: it = 295m == n: obj = 4632.8906016911 not converged: it = 296m == n: obj = 4632.8906016806 not converged: it = 297m == n: obj = 4632.8906016709 not converged: it = 298m == n: obj = 4632.8906016620 not converged: it = 299m == n: obj = 4632.8906016539 not converged: it = 300m == n: obj = 4632.8906016463 not converged: it = 301m == n: obj = 4632.8906016394 not converged: it = 302m == n: obj = 4632.8906016331 not converged: it = 303m == n: obj = 4632.8906016272 not converged: it = 304m == n: obj = 4632.8906016218 not converged: it = 305m == n: obj = 4632.8906016169 not converged: it = 306m == n: obj = 4632.8906016123 not converged: it = 307m == n: obj = 4632.8906016081 not converged: it = 308m == n: obj = 4632.8906016043 not converged: it = 309m == n: obj = 4632.8906016007 not converged: it = 310m == n: obj = 4632.8906015975 not converged: it = 311m == n: obj = 4632.8906015945 not converged: it = 312m == n: obj = 4632.8906015917 not converged: it = 313m == n: obj = 4632.8906015892 not converged: it = 314m == n: obj = 4632.8906015868 not converged: it = 315m == n: obj = 4632.8906015847 not converged: it = 316m == n: obj = 4632.8906015827 not converged: it = 317m == n: obj = 4632.8906015809 not converged: it = 318m == n: obj = 4632.8906015792 not converged: it = 319m == n: obj = 4632.8906015777 not converged: it = 320m == n: obj = 4632.8906015762 not converged: it = 321m == n: obj = 4632.8906015749 not converged: it = 322m == n: obj = 4632.8906015737 not converged: it = 323m == n: obj = 4632.8906015726 not converged: it = 324m == n: obj = 4632.8906015716 not converged: it = 325m == n: obj = 4632.8906015707 not converged: it = 326m == n: obj = 4632.8906015698 not converged: it = 327m == n: obj = 4632.8906015691 not converged: it = 328m == n: obj = 4632.8906015683 not converged: it = 329m == n: obj = 4632.8906015677 not converged: it = 330m == n: obj = 4632.8906015671 not converged: it = 331m == n: obj = 4632.8906015665 not converged: it = 332m == n: obj = 4632.8906015660 not converged: it = 333m == n: obj = 4632.8906015655 not converged: it = 334m == n: obj = 4632.8906015650 not converged: it = 335m == n: obj = 4632.8906015646 not converged: it = 336m == n: obj = 4632.8906015643 not converged: it = 337m == n: obj = 4632.8906015639 not converged: it = 338m == n: obj = 4632.8906015636 not converged: it = 339m == n: obj = 4632.8906015633 not converged: it = 340m == n: obj = 4632.8906015630 not converged: it = 341m == n: obj = 4632.8906015628 not converged: it = 342m == n: obj = 4632.8906015626 not converged: it = 343m == n: obj = 4632.8906015624 not converged: it = 344m == n: obj = 4632.8906015622 not converged: it = 345m == n: obj = 4632.8906015620 not converged: it = 346m == n: obj = 4632.8906015618 not converged: it = 347m == n: obj = 4632.8906015617 not converged: it = 348m == n: obj = 4632.8906015615 not converged: it = 349m == n: obj = 4632.8906015614 not converged: it = 350m == n: obj = 4632.8906015613 not converged: it = 351m == n: obj = 4632.8906015612 not converged: it = 352m == n: obj = 4632.8906015611 not converged: it = 353m == n: obj = 4632.8906015610 not converged: it = 354m == n: obj = 4632.8906015609 not converged: it = 355m == n: obj = 4632.8906015608 not converged: it = 356m == n: obj = 4632.8906015608 not converged: it = 357m == n: obj = 4632.8906015607 not converged: it = 358m == n: obj = 4632.8906015606 not converged: it = 359m == n: obj = 4632.8906015606 not converged: it = 360m == n: obj = 4632.8906015605 not converged: it = 361m == n: obj = 4632.8906015605 not converged: it = 362m == n: obj = 4632.8906015604 not converged: it = 363m == n: obj = 4632.8906015604 not converged: it = 364m == n: obj = 4632.8906015603 not converged: it = 365m == n: obj = 4632.8906015603 not converged: it = 366m == n: obj = 4632.8906015603 not converged: it = 367m == n: obj = 4632.8906015602 not converged: it = 368m == n: obj = 4632.8906015602 not converged: it = 369m == n: obj = 4632.8906015602 not converged: it = 370m == n: obj = 4632.8906015602 not converged: it = 371m == n: obj = 4632.8906015602 not converged: it = 372m == n: obj = 4632.8906015601 not converged: it = 373m == n: obj = 4632.8906015601 not converged: it = 374m == n: obj = 4632.8906015601 not converged: it = 375m == n: obj = 4632.8906015601 not converged: it = 376m == n: obj = 4632.8906015601 not converged: it = 377m == n: obj = 4632.8906015601 not converged: it = 378m == n: obj = 4632.8906015600 not converged: it = 379m == n: obj = 4632.8906015600 not converged: it = 380m == n: obj = 4632.8906015600 not converged: it = 381m == n: obj = 4632.8906015600 not converged: it = 382m == n: obj = 4632.8906015600 not converged: it = 383m == n: obj = 4632.8906015600 not converged: it = 384m == n: obj = 4632.8906015600Converged after 385 iterations, obj = 4632.8906015599995953fanny()'s caddy(*, k = 4):-> k_true (crisp) = 4> f4.16.2<- fanny(chorSub, k = 4, memb.exp = 1.6,+ iniMem.p = cluster:::as.membership(p4cl), tol = 1e-10, trace.lev = 2)fanny()'s fuzzy(n = 61, k = 4):fuzzy(): initial obj = 7365.64ef[]= ( 46750.7, 97854, 64737.8, 24170.1)esp[]= ( 17, 17, 17, 10)m == n: obj = 4744.9792255200 not converged: it = 1m == n: obj = 4679.5979841397 not converged: it = 2m == n: obj = 4661.1063474652 not converged: it = 3m == n: obj = 4651.1976132009 not converged: it = 4m == n: obj = 4645.1558185569 not converged: it = 5m == n: obj = 4641.3016999595 not converged: it = 6m == n: obj = 4638.7561402053 not converged: it = 7m == n: obj = 4637.0268537669 not converged: it = 8m == n: obj = 4635.8286004555 not converged: it = 9m == n: obj = 4634.9880315172 not converged: it = 10m == n: obj = 4634.3943437634 not converged: it = 11m == n: obj = 4633.9736501112 not converged: it = 12m == n: obj = 4633.6751509742 not converged: it = 13m == n: obj = 4633.4632343974 not converged: it = 14m == n: obj = 4633.3126714974 not converged: it = 15m == n: obj = 4633.2055165701 not converged: it = 16m == n: obj = 4633.1290071452 not converged: it = 17m == n: obj = 4633.0740913561 not converged: it = 18m == n: obj = 4633.0343739482 not converged: it = 19m == n: obj = 4633.0053552141 not converged: it = 20m == n: obj = 4632.9838809909 not converged: it = 21m == n: obj = 4632.9677467724 not converged: it = 22m == n: obj = 4632.9554145804 not converged: it = 23m == n: obj = 4632.9458119538 not converged: it = 24m == n: obj = 4632.9381902596 not converged: it = 25m == n: obj = 4632.9320254723 not converged: it = 26m == n: obj = 4632.9269490798 not converged: it = 27m == n: obj = 4632.9227001877 not converged: it = 28m == n: obj = 4632.9190924339 not converged: it = 29m == n: obj = 4632.9159911876 not converged: it = 30m == n: obj = 4632.9132978577 not converged: it = 31m == n: obj = 4632.9109390974 not converged: it = 32m == n: obj = 4632.9088593706 not converged: it = 33m == n: obj = 4632.9070158249 not converged: it = 34m == n: obj = 4632.9053747439 not converged: it = 35m == n: obj = 4632.9039090813 not converged: it = 36m == n: obj = 4632.9025967379 not converged: it = 37m == n: obj = 4632.9014193477 not converged: it = 38m == n: obj = 4632.9003614151 not converged: it = 39m == n: obj = 4632.8994096946 not converged: it = 40m == n: obj = 4632.8985527385 not converged: it = 41m == n: obj = 4632.8977805631 not converged: it = 42m == n: obj = 4632.8970843966 not converged: it = 43m == n: obj = 4632.8964564866 not converged: it = 44m == n: obj = 4632.8958899491 not converged: it = 45m == n: obj = 4632.8953786491 not converged: it = 46m == n: obj = 4632.8949171027 not converged: it = 47m == n: obj = 4632.8945003975 not converged: it = 48m == n: obj = 4632.8941241249 not converged: it = 49m == n: obj = 4632.8937843232 not converged: it = 50m == n: obj = 4632.8934774285 not converged: it = 51m == n: obj = 4632.8932002321 not converged: it = 52m == n: obj = 4632.8929498430 not converged: it = 53m == n: obj = 4632.8927236556 not converged: it = 54m == n: obj = 4632.8925193198 not converged: it = 55m == n: obj = 4632.8923347162 not converged: it = 56m == n: obj = 4632.8921679323 not converged: it = 57m == n: obj = 4632.8920172421 not converged: it = 58m == n: obj = 4632.8918810877 not converged: it = 59m == n: obj = 4632.8917580629 not converged: it = 60m == n: obj = 4632.8916468978 not converged: it = 61m == n: obj = 4632.8915464462 not converged: it = 62m == n: obj = 4632.8914556728 not converged: it = 63m == n: obj = 4632.8913736426 not converged: it = 64m == n: obj = 4632.8912995115 not converged: it = 65m == n: obj = 4632.8912325169 not converged: it = 66m == n: obj = 4632.8911719701 not converged: it = 67m == n: obj = 4632.8911172490 not converged: it = 68m == n: obj = 4632.8910677916 not converged: it = 69m == n: obj = 4632.8910230905 not converged: it = 70m == n: obj = 4632.8909826870 not converged: it = 71m == n: obj = 4632.8909461670 not converged: it = 72m == n: obj = 4632.8909131564 not converged: it = 73m == n: obj = 4632.8908833169 not converged: it = 74m == n: obj = 4632.8908563432 not converged: it = 75m == n: obj = 4632.8908319595 not converged: it = 76m == n: obj = 4632.8908099163 not converged: it = 77m == n: obj = 4632.8907899884 not converged: it = 78m == n: obj = 4632.8907719724 not converged: it = 79m == n: obj = 4632.8907556842 not converged: it = 80m == n: obj = 4632.8907409578 not converged: it = 81m == n: obj = 4632.8907276430 not converged: it = 82m == n: obj = 4632.8907156041 not converged: it = 83m == n: obj = 4632.8907047185 not converged: it = 84m == n: obj = 4632.8906948754 not converged: it = 85m == n: obj = 4632.8906859747 not converged: it = 86m == n: obj = 4632.8906779259 not converged: it = 87m == n: obj = 4632.8906706472 not converged: it = 88m == n: obj = 4632.8906640647 not converged: it = 89m == n: obj = 4632.8906581117 not converged: it = 90m == n: obj = 4632.8906527276 not converged: it = 91m == n: obj = 4632.8906478581 not converged: it = 92m == n: obj = 4632.8906434537 not converged: it = 93m == n: obj = 4632.8906394699 not converged: it = 94m == n: obj = 4632.8906358664 not converged: it = 95m == n: obj = 4632.8906326068 not converged: it = 96m == n: obj = 4632.8906296582 not converged: it = 97m == n: obj = 4632.8906269907 not converged: it = 98m == n: obj = 4632.8906245774 not converged: it = 99m == n: obj = 4632.8906223942 not converged: it = 100m == n: obj = 4632.8906204189 not converged: it = 101m == n: obj = 4632.8906186316 not converged: it = 102m == n: obj = 4632.8906170145 not converged: it = 103m == n: obj = 4632.8906155512 not converged: it = 104m == n: obj = 4632.8906142271 not converged: it = 105m == n: obj = 4632.8906130289 not converged: it = 106m == n: obj = 4632.8906119446 not converged: it = 107m == n: obj = 4632.8906109632 not converged: it = 108m == n: obj = 4632.8906100750 not converged: it = 109m == n: obj = 4632.8906092711 not converged: it = 110m == n: obj = 4632.8906085435 not converged: it = 111m == n: obj = 4632.8906078849 not converged: it = 112m == n: obj = 4632.8906072887 not converged: it = 113m == n: obj = 4632.8906067490 not converged: it = 114m == n: obj = 4632.8906062603 not converged: it = 115m == n: obj = 4632.8906058180Converged after 116 iterations, obj = 4632.8906058179836691fanny()'s caddy(*, k = 4):-> k_true (crisp) = 4> all.equal((m1 <- f4.16 $membership),+ (m2 <- f4.16.2$membership))[1] "Mean relative difference: 0.0002281145"> ## IGNORE_RDIFF_END> stopifnot(identical(dimnames(m1), dimnames(m2)),+ 0 < m1,m1 < 1, 0 < m2,m2 < 1,+ ## the memberships are quite close but have only converged to precision 0.000228+ all.equal(m1, m2, tol = 0.001))> stopifnot(exprs = {+ f4.16$clustering == f4.16.2$clustering+ all.equal(f4.16[notMconv], f4.16.2[notMconv], tol = 1e-7)+ })>> f4.14 <- fanny(chorSub, k = 4, memb.exp = 1.4)> f4.12 <- fanny(chorSub, k = 4, memb.exp = 1.2)>> table(f4.12$clustering, f4.14$clustering)# close but different1 2 3 41 14 0 8 02 1 14 0 23 0 0 12 54 0 0 0 5> table(f4.16$clustering, f4.14$clustering)# ditto1 2 3 41 2 0 1 52 1 14 0 73 3 0 4 04 9 0 15 0> table(f4.12$clustering, f4.16$clustering)# hence differ even more1 2 3 41 2 0 3 172 1 16 0 03 5 1 4 74 0 5 0 0>> symnum(cbind(f4.16$membership, 1, f4.12$membership),+ cutpoints= c(0., 0.2, 0.6, 0.8, 0.9, 0.95, 1 -1e-7, 1 +1e-7),+ symbols = c(" ", ".", ",", "+", "*", "B","1"))190 . . . . 1 ,191 . . 1 B192 . . . . 1 +193 . . 1 *194 . . 1 B195 . . . . 1 +196 . . . . 1 ,197 . . . . 1 +198 . . 1 +199 . . 1 B200 . . . . 1 , .201 . . 1 B202 . . 1 B203 . . . . 1 . .204 . . 1 +205 . . . . 1 *206 . . 1 +207 . . 1 B208 . . 1 B209 . . 1 B210 . . 1 +211 . . 1 +212 . . . . 1 . .213 . . . . 1 ,214 . . . . 1 . ,215 . . 1 B216 . . 1 B217 . . 1 B218 . . 1 . ,219 . . . . 1 . .220 . . 1 B221 . . 1 ,222 . . 1 B223 . . . . 1 . .224 . . 1 , .225 . . . . 1 +226 . . 1 +227 . . 1 B228 . . . . 1 . .229 . . . . 1 . . .230 . . 1 , .231 . . 1 *232 . . 1 . ,233 . . 1 B234 . . 1 , .235 . . . . 1 +236 . . . . 1 B237 . . 1 B238 . . 1 +239 . . 1 B240 . . 1 B241 . . . . 1 , .242 . . 1 B243 . . 1 *244 . . 1 +245 . . 1 B246 . . 1 B247 . . . . 1 B248 . . 1 +249 . . 1 +250 . . 1 +attr(,"legend")[1] 0 ' ' 0.2 '.' 0.6 ',' 0.8 '+' 0.9 '*' 0.95 'B' 0.9999999 '1' 1>>> ## Last Line:> cat('Time elapsed: ', proc.time() - .proctime00,'\n')Time elapsed: 0.136 0.007 0.143 0 0>> proc.time()user system elapsed0.230 0.038 0.260