def import_folder(folder, name='study', study=None): if not study: study = RockPy3.Study(name=name) files = [ i for i in os.listdir(folder) if not i == '.DS_Store' if not i.startswith('#') ] samples = defaultdict(list) for i in files: d = RockPy3.get_info_from_fname(join(folder, i)) samples[d['name']].append(d) for s in samples: sgroup_name = samples[s][0]['samplegroup'] if not sgroup_name in study.samplegroup_names: sg = RockPy3.SampleGroup(name=samples[s][0]['samplegroup']) study.add_samplegroup(sg) sg = study[sgroup_name] if not s in study.sdict: smpl = RockPy3.Sample(**samples[s][0]) sg.add_samples(smpl) for m in samples[s]: measurement = smpl.add_measurement(**m) if 'ISindex' in m: initial = get_IS(m, samples[s]) measurement.set_initial_state(**initial) samples[s].remove(initial) if 'IS' in m and m['IS'] == True: continue return study
def setUp(self): self.study = RockPy3.Study()