mvpa2.generators.partition.NFoldPartitioner¶
-
class
mvpa2.generators.partition.
NFoldPartitioner
(cvtype=1, **kwargs)¶ Generic N-fold data partitioner.
Given a dataset with N chunks, with
cvtype
= 1 (which is default), it would generate N partition sets, where each chunk is sequentially taken out (with replacement) to form a second partition, while all other samples together form the first partition. Example, if there are 4 chunks, partition sets forcvtype
= 1 are:[[1, 2, 3], [0]] [[0, 2, 3], [1]] [[0, 1, 3], [2]] [[0, 1, 2], [3]]
If
cvtype
>1, then all possible combinations ofcvtype
number of chunks are taken out, so forcvtype
= 2 in previous example yields:[[2, 3], [0, 1]] [[1, 3], [0, 2]] [[1, 2], [0, 3]] [[0, 3], [1, 2]] [[0, 2], [1, 3]] [[0, 1], [2, 3]]
Note that the “taken-out” partition is always labeled ‘2’ while the remaining elements are labeled ‘1’.
If
cvtype
is a float in the range from 0 to 1, it specifies the ratio of present unique values to be taken.If
cvtype
is large enough generating prohibitively large number of combinations, providecount
to limit number of combinations and provideselection_strategy
= ‘random’.Notes
Available conditional attributes:
calling_time+
: Time (in seconds) it took to call the noderaw_results
: Computed results before invoking postproc. Stored only if postproc is not None.
(Conditional attributes enabled by default suffixed with
+
)Attributes
attr
descr
Description of the object if any pass_attr
Which attributes of the dataset or self.ca to pass into result dataset upon call postproc
Node to perform post-processing of results selection_strategy
space
Processing space name of this node splitattr
DEPRECATED: to be removed in PyMVPA 2.1; use .attr instead Methods
__call__
(ds[, _call_kwargs])The default implementation calls _precall()
,_call()
, and finally returns the output of_postcall()
.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 partition spec. get_postproc
()Returns the post-processing node or None. get_selected_indexes
(n_cfgs)A naive selection of indexes according to strategy and count 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: cvtype : int, float
Type of leave-one-out scheme: N-(cvtype). float value (0..1) specifies ratio of samples to be taken into the combination (e.g. 0.5 for 50%) given a dataset
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’: Firstcount
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.pass_attr : str, list of str|tuple, optional
Additional attributes to pass on to an output dataset. Attributes can be taken from all three attribute collections of an input dataset (sa, fa, a – see
Dataset.get_attr()
), or from the collection of conditional attributes (ca) of a node instance. Corresponding collection name prefixes should be used to identify attributes, e.g. ‘ca.null_prob’ for the conditional attribute ‘null_prob’, or ‘fa.stats’ for the feature attribute stats. In addition to a plain attribute identifier it is possible to use a tuple to trigger more complex operations. The first tuple element is the attribute identifier, as described before. The second element is the name of the target attribute collection (sa, fa, or a). The third element is the axis number of a multidimensional array that shall be swapped with the current first axis. The fourth element is a new name that shall be used for an attribute in the output dataset. Example: (‘ca.null_prob’, ‘fa’, 1, ‘pvalues’) will take the conditional attribute ‘null_prob’ and store it as a feature attribute ‘pvalues’, while swapping the first and second axes. Simplified instructions can be given by leaving out consecutive tuple elements starting from the end.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
Attributes
attr
descr
Description of the object if any pass_attr
Which attributes of the dataset or self.ca to pass into result dataset upon call postproc
Node to perform post-processing of results selection_strategy
space
Processing space name of this node splitattr
DEPRECATED: to be removed in PyMVPA 2.1; use .attr instead Methods
__call__
(ds[, _call_kwargs])The default implementation calls _precall()
,_call()
, and finally returns the output of_postcall()
.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 partition spec. get_postproc
()Returns the post-processing node or None. get_selected_indexes
(n_cfgs)A naive selection of indexes according to strategy and count 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.