NXclustering

Status:

base class, extends NXobject

Description:

Metadata to the results of a clustering analysis.

Clustering algorithms are routine tools to segment a set of objects/primitives into groups, objects of different type. A plethora of algorithms have been proposed for geometric primitives as objects, such as points, triangles, or (abstract) objects.

This base class considers metadata and results of one clustering applied to a set in which objects are either categorized as noise or belonging to a cluster, specifically here only one cluster.

Symbols:

The symbols used in the schema to specify e.g. dimensions of arrays.

n_lbl_num: Number of numeral labels per object.

n_lbl_cat: Number of categorical labels per object.

n_cluster: Total number of clusters detected.

Groups cited:

none

Structure:

number_of_numeric_labels: (optional) NX_UINT {units=NX_UNITLESS}

How many numeric labels does each object have.

number_of_categorical_labels: (optional) NX_UINT {units=NX_UNITLESS}

How many categorical labels does each object have.

objects: (optional) NX_CHAR

Reference to a set of objects investigated in a cluster analysis. Objects must have clear integer identifier.

numeric_label: (optional) NX_NUMBER

Reference to numeric attribute data for each object.

categorical_label: (optional) NX_CHAR

Reference to categorical attribute data for each object.

identifier_offset: (optional) NX_UINT {units=NX_UNITLESS}

Which identifier is the first to be used to label a cluster.

The value should be chosen in such a way that special values can be resolved: * identifier_offset-1 indicates an object belongs to no cluster. * identifier_offset-2 indicates an object belongs to the noise category. Setting for instance identifier_offset to 1 recovers the commonly used case that objects of the noise category get values to -1 and unassigned points to 0.

unassigned: (optional) NX_UINT {units=NX_UNITLESS}

Total number of objects categorized as unassigned.

noise: (optional) NX_UINT {units=NX_UNITLESS}

Total number of objects categorized as noise.

number_of_cluster: (optional) NX_UINT {units=NX_UNITLESS}

Total number of clusters (excluding noise and unassigned).

size: (optional) NX_NUMBER (Rank: 1, Dimensions: [n_cluster]) {units=NX_UNITLESS}

Number of objects associated to each cluster. The labels are implicit, meaning the zeroth/first entry in the array belongs to the first cluster, the second entry to the second cluster and so on and so forth. The first cluster has the value of identifier_offset as its identifier. The second cluster has identifier_offset + 1, and so on and so forth.

Hypertext Anchors

List of hypertext anchors for all groups, fields, attributes, and links defined in this class.

NXDL Source:

https://github.com/FAIRmat-Experimental/nexus_definitions/tree/fairmat/contributed_definitions/NXclustering.nxdl.xml