def test_merge_extractor_results(): np.random.seed(100) image_dir = join(get_test_data_path(), 'image') stim1 = ImageStim(join(image_dir, 'apple.jpg')) stim2 = ImageStim(join(image_dir, 'obama.jpg')) de = DummyExtractor() de_names = ['Extractor1', 'Extractor2', 'Extractor3'] results = [de.extract(stim1, name) for name in de_names] results += [de.extract(stim2, name) for name in de_names] df = merge_results(results) assert df.shape == (355, 10) assert df.columns.levels[0].unique().tolist() == de_names + ['onset', 'stim'] assert df.columns.levels[1].unique().tolist() == ['duration', 0, 1, 2, ''] assert set(df.index.levels[1].unique()) == set(['obama.jpg', 'apple.jpg'])
def extract(self, stims): stims = listify(stims) results = flatten(self.collect(stims)) return merge_results(results) if self.merge else results