Merge scan into another only once at max
This commit is contained in:
parent
b39d970960
commit
2adbcc6bcd
@ -34,9 +34,12 @@ def normalize_dataset(dataset, monitor=100_000):
|
|||||||
|
|
||||||
|
|
||||||
def merge_duplicates(dataset):
|
def merge_duplicates(dataset):
|
||||||
for scan_i, scan_j in itertools.combinations(dataset, 2):
|
merged = np.zeros(len(dataset), dtype=np.bool)
|
||||||
if _parameters_match(scan_i, scan_j):
|
for ind_into, scan_into in enumerate(dataset):
|
||||||
merge_scans(scan_i, scan_j)
|
for ind_from, scan_from in enumerate(dataset[ind_into + 1 :], start=ind_into + 1):
|
||||||
|
if _parameters_match(scan_into, scan_from) and not merged[ind_from]:
|
||||||
|
merge_scans(scan_into, scan_from)
|
||||||
|
merged[ind_from] = True
|
||||||
|
|
||||||
|
|
||||||
def _parameters_match(scan1, scan2):
|
def _parameters_match(scan1, scan2):
|
||||||
@ -65,12 +68,14 @@ def _parameters_match(scan1, scan2):
|
|||||||
|
|
||||||
|
|
||||||
def merge_datasets(dataset_into, dataset_from):
|
def merge_datasets(dataset_into, dataset_from):
|
||||||
for scan_from in dataset_from:
|
merged = np.zeros(len(dataset_from), dtype=np.bool)
|
||||||
for scan_into in dataset_into:
|
for scan_into in dataset_into:
|
||||||
if _parameters_match(scan_into, scan_from):
|
for ind, scan_from in enumerate(dataset_from):
|
||||||
|
if _parameters_match(scan_into, scan_from) and not merged[ind]:
|
||||||
merge_scans(scan_into, scan_from)
|
merge_scans(scan_into, scan_from)
|
||||||
break
|
merged[ind] = True
|
||||||
|
|
||||||
|
for scan_from in dataset_from:
|
||||||
dataset_into.append(scan_from)
|
dataset_into.append(scan_from)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user