Programmer Guide/Command Reference/EVAL/haclust: Difference between revisions
From STX Wiki
< Programmer Guide | Command Reference | EVAL
Jump to navigationJump to search
m (1 revision: Initial import) |
No edit summary |
||
(9 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{DISPLAYTITLE:{{SUBPAGENAME}}}} | {{DISPLAYTITLE:{{SUBPAGENAME}}}} | ||
Hierarchical-agglomerative cluster analysis. | Hierarchical-agglomerative cluster analysis. | ||
---- | |||
;Usage 1:<code>haclust(<var>d</var>, <var>m</var>)</code> | |||
:;<var>d</var>: A dissimilarity or distance matrix. For N data points this is a NxN matrix (e.g. created using the function [[../dist|dist]]) | |||
:;<var>mflag</var>:The cluster method: | |||
::{|class="einrahmen" | |||
!''mflag'' !! method | |||
|- | |||
|0 ||Single Linkage | |||
|- | |||
|1 ||Complete Linkage | |||
|- | |||
|2 ||Weighted Average Linkage | |||
|- | |||
|3 ||Average Linkage | |||
|- | |||
|4 ||Median | |||
|- | |||
|5 ||Centroid | |||
|- | |||
|6 ||Ward | |||
|} | |||
;Result 1: The result is a cluster hierarchy table ''htable''. This is a 3x(N-1) table containing the merged cluster pairs and the agglomeration niveaus. | |||
---- | |||
;Usage 2:<code>haclust(<var>htable</var>, <var>nclust</var>)</code> ... create partition table: | |||
;Usage 3:<code>haclust(<var>ptable</var>, <var>iclust</var>)</code> ... extract cluster data: | |||
---- | |||
;See also: For a detailed description of '''Usage 2''' and '''Usage 3''' and the format of the hierarchy ''htable'' and the partition table ''ptable'' see [[../modclust|modclust]]. | |||
:[[../modclust|modclust]], [[../em|em]], [[../density|density]], [[../svd|svd]], [[../dist|dist]] | |||
[[../#Functions|<function list>]] | |||
Example: | |||
<pre> | <pre> | ||
[macro haclust_example] | [macro haclust_example] | ||
// create bivariate input data | |||
#datatable := new table * 2 /p num:x num:y | |||
$#datatable[*,0] := '1;2;1;3;4.5' | |||
$#datatable[*,1] := '1;0.5;4;2;4' | |||
// compute distance matrix | |||
#disttable := eval dist($#datatable) | |||
// cluster analysis methods: | |||
// 0 (SL), 1 (CL), 2 (WAL), 3 (AL), 4 (M), 5 (C), 6 (W) | |||
#method := 6 // Ward | |||
// nr of clusters | |||
#nclusters := 2 | |||
// compute hierarchy and partition | |||
#hierarchy := eval haclust($#disttable,$#method) | |||
#partition := eval haclust($#hierarchy,$#nclusters) | |||
// show results | |||
showitem $#hierarchy | |||
showitem $#partition | |||
exit | exit | ||
</pre> | </pre> |
Latest revision as of 10:46, 21 April 2011
Hierarchical-agglomerative cluster analysis.
- Usage 1
haclust(d, m)
- d
- A dissimilarity or distance matrix. For N data points this is a NxN matrix (e.g. created using the function dist)
- mflag
- The cluster method:
mflag method 0 Single Linkage 1 Complete Linkage 2 Weighted Average Linkage 3 Average Linkage 4 Median 5 Centroid 6 Ward
- Result 1
- The result is a cluster hierarchy table htable. This is a 3x(N-1) table containing the merged cluster pairs and the agglomeration niveaus.
- Usage 2
haclust(htable, nclust)
... create partition table:- Usage 3
haclust(ptable, iclust)
... extract cluster data:
- See also
- For a detailed description of Usage 2 and Usage 3 and the format of the hierarchy htable and the partition table ptable see modclust.
- modclust, em, density, svd, dist
Example:
[macro haclust_example] // create bivariate input data #datatable := new table * 2 /p num:x num:y $#datatable[*,0] := '1;2;1;3;4.5' $#datatable[*,1] := '1;0.5;4;2;4' // compute distance matrix #disttable := eval dist($#datatable) // cluster analysis methods: // 0 (SL), 1 (CL), 2 (WAL), 3 (AL), 4 (M), 5 (C), 6 (W) #method := 6 // Ward // nr of clusters #nclusters := 2 // compute hierarchy and partition #hierarchy := eval haclust($#disttable,$#method) #partition := eval haclust($#hierarchy,$#nclusters) // show results showitem $#hierarchy showitem $#partition exit