MCPcopy Create free account
hub / github.com/THUDM/GLM / write

Method write

data_utils/datasets.py:429–468  ·  view source on GitHub ↗

given a generator of metrics for each of the data points X_i, write the metrics, text, and labels to a json file

(self, writer_gen=None, path=None, skip_header=False)

Source from the content-addressed store, hash-verified

427 return len(self.X)
428
429 def write(self, writer_gen=None, path=None, skip_header=False):
430 """
431 given a generator of metrics for each of the data points X_i,
432 write the metrics, text, and labels to a json file
433 """
434 if path is None:
435 path = self.path + '.results'
436
437 jsons = []
438
439 if writer_gen is not None:
440 # if first item of generator is a header of what the metrics mean then write header to csv file
441 def gen_helper():
442 keys = {}
443 keys[0] = self.label_key
444 if not skip_header:
445 for idx, k in enumerate(tuple(next(writer_gen))):
446 keys[idx + 1] = k
447 for i, row in enumerate(writer_gen):
448 if i == 0 and skip_header:
449 for idx, _ in enumerate(row):
450 keys[idx + 1] = 'metric_%d' % (idx,)
451 j = {}
452 for idx, v in enumerate((self.Y[i],) + tuple(row)):
453 k = keys[idx]
454 j[k] = v
455 yield j
456 else:
457 def gen_helper():
458 for y in self.Y:
459 j = {}
460 j[self.label_key] = y
461 yield j
462
463 def out_stream():
464 for i, j in enumerate(gen_helper()):
465 j[self.text_key] = self.X[i]
466 yield j
467
468 self.save_json_stream(path, out_stream())
469
470 def save_json_stream(self, save_path, json_stream):
471 if self.loose_json:

Callers

nothing calls this directly

Calls 1

save_json_streamMethod · 0.95

Tested by

no test coverage detected