scipy.cluster.hierarchy.ClusterNode.pre_order

ClusterNode.pre_order(func=<function ClusterNode.<lambda>>)[source]

Perform pre-order traversal without recursive function calls.

When a leaf node is first encountered, func is called with the leaf node as its argument, and its result is appended to the list.

For example, the statement:

ids = root.pre_order(lambda x: x.id)

returns a list of the node ids corresponding to the leaf nodes of the tree as they appear from left to right.

Parameters
funcfunction

Applied to each leaf ClusterNode object in the pre-order traversal. Given the i-th leaf node in the pre-order traversal n[i], the result of func(n[i]) is stored in L[i]. If not provided, the index of the original observation to which the node corresponds is used.

Returns
Llist

The pre-order traversal.