The tools to standardize the tree structures and channel names.

Description

groupByTree(x)

groupByChannels(x)

checkRedundantNodes(x)

dropRedundantNodes(x, toRemove)

dropRedundantChannels(gs)

updateChannels(gs, map, all = TRUE)

insertGate(gs, gate, parent, children)

setNode(x, y, FALSE)

Details

In order to merge multiple GatingSets into single GatingSetList, the gating trees and channel names must be consistent. These functions help removing the discrepancies and standardize the GatingSets so that they are mergable.

groupByTree splits the GatingSets into groups based on the gating tree structures.

groupByChannels split GatingSets into groups based on their flow channels.

checkRedundantNodes returns the terminal(or leaf) nodes that makes the gating trees to be different among GatingSets and thus can be considered to remove as redundant nodes.

dropRedundantNodes removes the terminal(or leaf) nodes that are detected as redundant by checkRedundantNodes.

dropRedundantChannels remove the redundant channels that are not used by any gate defined in the GatingSet.

updateChannels modifies the channel names in place. (Usually used to standardize the channels among GatingSets due to the letter case discrepancies or typo).

insertGate inserts a dummy gate to the GatingSet. Is is useful trick to deal with the extra non-leaf node in some GatingSets that can not be simply removed by dropRedundantNodes

setNode hide a node/gate in a GatingSet. It is useful to deal with the non-leaf node that causes the tree structure discrepancy.

Want to suggest features or report bugs for rdrr.io? Use the GitHub issue tracker.