Skip to content

Commit f59622c

Browse files
StarmanMartinphuang26
authored andcommitted
Changed GCD delimiter to ";"
1 parent 8f44ebc commit f59622c

1 file changed

Lines changed: 14 additions & 13 deletions

File tree

converter_app/readers/gcd.py

Lines changed: 14 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ class GcdReader(Reader):
1212
priority = 5
1313

1414
_number_of_ch = 0
15+
_delimiter = ';'
1516

1617
def _parse_input(self):
1718
current_header = '[NO HEADER]'
@@ -52,7 +53,7 @@ def get_tables(self):
5253
table['header'].append(header_key)
5354
for line in self.lines.get(header_key, []):
5455
table['header'].append(line)
55-
key, value = [x.strip() for x in line.split(',', 1)]
56+
key, value = [x.strip() for x in line.split(self._delimiter, 1)]
5657
if datetime_re.match(value) is not None:
5758
value = datetime.datetime.strptime(value, datetime_read_formate).strftime(datetime_write_formate)
5859
if time_re.match(value) is not None:
@@ -61,9 +62,9 @@ def get_tables(self):
6162
value = datetime.datetime.strptime(value, date_read_formate).strftime(date_write_formate)
6263
if key in ['Detector ID', 'Detector Name', '# of Channels']:
6364
if key == '# of Channels':
64-
self._number_of_ch = sum([int(x) for x in value.split(',')])
65+
self._number_of_ch = sum([int(x) for x in value.split(self._delimiter)])
6566
table['metadata'][key] = str(self._number_of_ch)
66-
for idx, val_item in enumerate(value.split(',')):
67+
for idx, val_item in enumerate(value.split(self._delimiter)):
6768
table['metadata'][f'{header_key}.{key}.{idx + 1}'] = val_item
6869
else:
6970
table['metadata'][f'{header_key}.{key}'] = value
@@ -73,16 +74,16 @@ def get_tables(self):
7374
table['metadata']['rows'] = str(len(table['rows']))
7475
table['metadata']['columns'] = str(len(table['columns']))
7576

76-
def add_peak_table(header, lines=None):
77+
def add_peak_table(header, lines=None, idx=0):
7778
if lines is None: lines = self.lines[header]
78-
key, number_of_ids = [x.strip() for x in lines[0].split(',', 1)]
79+
key, number_of_ids = [x.strip() for x in lines[0].split(self._delimiter, 1)]
7980
table = self.append_table(tables)
8081
table['header'] += lines
8182
table['metadata']['Header'] = header
8283
table['metadata'][key] = number_of_ids
83-
col_names = [x.strip() for x in lines[1].split(',')]
84+
col_names = [x.strip() for x in lines[1].split(self._delimiter)]
8485
for line in lines[2:]:
85-
table_entries = line.split(',')
86+
table_entries = line.split(self._delimiter)
8687
table['rows'].append(table_entries)
8788
for idx_entry, entry in enumerate(table_entries):
8889
table['metadata'][f"Ch{idx+1}.Id {table_entries[0]}.{col_names[idx_entry]}"] = entry
@@ -96,11 +97,11 @@ def add_peak_table(header, lines=None):
9697

9798
for idx in range(self._number_of_ch):
9899
header = f"[Compound Results(Ch{idx + 1})]"
99-
add_peak_table(header)
100+
add_peak_table(header,idx=idx)
100101
header = f"[Peak Table(Ch{idx + 1})]"
101-
data_lines = [x for x in self.lines[header][2:] if x.split(',')[9].strip() != '']
102+
data_lines = [x for x in self.lines[header][2:] if x.split(self._delimiter)[9].strip() != '']
102103
lines = self.lines[header][:2] + data_lines
103-
add_peak_table(header, lines)
104+
add_peak_table(header, lines=lines, idx=idx)
104105

105106

106107
def add_value_table(header):
@@ -109,17 +110,17 @@ def add_value_table(header):
109110
table['metadata']['Header'] = header
110111

111112
metas = [x for x in lines if re.match('^\d', x) is None]
112-
values = [[float(y) for y in x.split(',')] for x in lines if re.match('^\d', x) is not None]
113+
values = [[float(y) for y in x.split(self._delimiter)] for x in lines if re.match('^\d', x) is not None]
113114
for line in metas[:-1]:
114-
key, value = [x.strip() for x in line.split(',', 1)]
115+
key, value = [x.strip() for x in line.split(self._delimiter, 1)]
115116
table['metadata'][f"{header}.{key}"] = value
116117
table['rows'] = values
117118

118119

119120
table['columns'] = [{
120121
'key': str(idx),
121122
'name': value
122-
} for idx, value in enumerate(metas[-1].split(','))]
123+
} for idx, value in enumerate(metas[-1].split(self._delimiter))]
123124

124125
table['metadata']['rows'] = str(len(table['rows']))
125126
table['metadata']['columns'] = str(len(table['columns']))

0 commit comments

Comments
 (0)