예제 #1
0
def model_generator(formula, data, volume_start_times, iterable=None, 
                    slicetimes=None, model_type=OLSModel, 
                    model_params = lambda x: ()):
    """
    Generator for the models for a pass of fmristat analysis.
    """
    for i, d in matrix_generator(fmri_generator(data, iterable=iterable)):
        model_args = model_params(i) # model may depend on i
        rmodel = model_type(formula.design(volume_start_times), *model_args)
        yield i, d, rmodel
예제 #2
0
파일: model.py 프로젝트: Hiccup/nipy
def model_generator(formula, data, volume_start_times, iterable=None,
                    slicetimes=None, model_type=OLSModel,
                    model_params = lambda x: ()):
    """
    Generator for the models for a pass of fmristat analysis.
    """
    volume_start_times = make_recarray(volume_start_times.astype(float), 't')
    # Generator for slices of the data with time as first axis
    axis0_gen = fmri_generator(data, iterable=iterable)
    # Iterate over 2D slices of the data
    for indexer, indexed_data in matrix_generator(axis0_gen):
        model_args = model_params(indexer) # model may depend on i
        # Get the design for these volume start times
        design = formula.design(volume_start_times, return_float=True)
        # Make the model from the design
        rmodel = model_type(design, *model_args)
        yield indexer, indexed_data, rmodel
예제 #3
0
def model_generator(formula, data, volume_start_times, iterable=None,
                    slicetimes=None, model_type=OLSModel,
                    model_params = lambda x: ()):
    """
    Generator for the models for a pass of fmristat analysis.
    """
    volume_start_times = make_recarray(volume_start_times.astype(float), 't')
    # Generator for slices of the data with time as first axis
    axis0_gen = axis0_generator(data, slicers=iterable)
    # Iterate over 2D slices of the data
    for indexer, indexed_data in matrix_generator(axis0_gen):
        model_args = model_params(indexer) # model may depend on i
        # Get the design for these volume start times
        design = formula.design(volume_start_times, return_float=True)
        # Make the model from the design
        rmodel = model_type(design, *model_args)
        yield indexer, indexed_data, rmodel