# scipy.cluster.hierarchy.ClusterNode.pre_order¶

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

Performs 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: func : function 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. L : list The pre-order traversal.

#### Previous topic

scipy.cluster.hierarchy.ClusterNode.is_leaf

#### Next topic

scipy.cluster.hierarchy.leaves_list