mvpa2.generators.partition.CustomPartitioner

Inheritance diagram of CustomPartitioner

class mvpa2.generators.partition.CustomPartitioner(splitrule, **kwargs)

Partition a dataset using an arbitrary custom rule.

The partitioner is configured by passing a custom rule (splitrule) to its constructor. Such a rule is basically a sequence of partition definitions. Every single element in this sequence results in exactly one partition set. Each element is another sequence of attribute values whose corresponding samples shall go into a particular partition.

Notes

Available conditional attributes:

  • calling_time+: Time (in seconds) it took to call the node
  • raw_results: Computed results before invoking postproc. Stored only if postproc is not None.

(Conditional attributes enabled by default suffixed with +)

Examples

Generate two sets. In the first set the second partition contains all samples with sample attributes corresponding to either 0, 1 or 2. The first partition of the first set contains all samples which are not part of the second partition.

The second set yields three partitions. The first with all samples corresponding to sample attributes 1 and 2, the second contains only samples with attribute 3 and the last contains the samples with attribute 5 and 6.

>>> ptr = CustomPartitioner([(None, [0, 1, 2]), ([1,2], [3], [5, 6])])

The numeric labels of all partitions correspond to their position in the splitrule of a particular set. Note that the actual labels start with ‘1’ as all unselected elements are labeled ‘0’.

Methods

generate(ds)
get_partition_specs(ds) Returns the specs for all to be generated partition sets.
get_partitions_attr(ds, specs) Create a partition attribute array for a particular partion spec.
get_postproc() Returns the post-processing node or None.
get_space() Query the processing space name of this node.
reset()
set_postproc(node) Assigns a post-processing node
set_space(name) Set the processing space name of this node.
Parameters :

splitrule : list of tuple

Custom partition set specs.

enable_ca : None or list of str

Names of the conditional attributes which should be enabled in addition to the default ones

disable_ca : None or list of str

Names of the conditional attributes which should be disabled

count : None or int

Desired number of splits to be output. It is limited by the number of splits possible for a given splitter (e.g. OddEvenSplitter can have only up to 2 splits). If None, all splits are output (default).

selection_strategy : str

If count is not None, possible strategies are possible: ‘first’: First count splits are chosen; ‘random’: Random (without replacement) count splits are chosen; ‘equidistant’: Splits which are equidistant from each other.

attr : str

Sample attribute used to determine splits.

space : str

Name of the to be created sample attribute defining the partitions. In addition, a dataset attribute named ‘space_set’ will be added to each output dataset, indicating the number of the partition set it corresponds to.

postproc : Node instance, optional

Node to perform post-processing of results. This node is applied in __call__() to perform a final processing step on the to be result dataset. If None, nothing is done.

descr : str

Description of the instance

Methods

generate(ds)
get_partition_specs(ds) Returns the specs for all to be generated partition sets.
get_partitions_attr(ds, specs) Create a partition attribute array for a particular partion spec.
get_postproc() Returns the post-processing node or None.
get_space() Query the processing space name of this node.
reset()
set_postproc(node) Assigns a post-processing node
set_space(name) Set the processing space name of this node.

NeuroDebian

NITRC-listed