Пример #1
0
def reject_ica(inst,
               reference,
               n_components=0.99,
               method="fastica",
               corr_thresh=0.9,
               random_state=None,
               plot=False):

    if isinstance(reference, str):
        reference = read_ica(reference)

    ica = ICA(n_components=n_components, method=method)
    ica.fit(inst)
    labels = list(reference.labels_.keys())
    components = list(reference.labels_.values())

    for component, label in zip(components, labels):
        corrmap([reference, ica],
                template=(0, component[0]),
                plot=plot,
                label=label,
                threshold=corr_thresh)

    exclude = [item for subl in list(ica.labels_.values()) for item in subl]
    ica.apply(inst, exclude=exclude)

    return inst, ica