given a generator of metrics for each of the data points X_i, write the metrics, text, and labels to a csv file
(self, writer_gen=None, path=None, skip_header=False)
| 290 | return {'text': x, 'length': len(x), 'label': y} |
| 291 | |
| 292 | def write(self, writer_gen=None, path=None, skip_header=False): |
| 293 | """ |
| 294 | given a generator of metrics for each of the data points X_i, |
| 295 | write the metrics, text, and labels to a csv file |
| 296 | """ |
| 297 | if path is None: |
| 298 | path = self.path+'.results' |
| 299 | print('generating csv at ' + path) |
| 300 | with open(path, 'w') as csvfile: |
| 301 | c = csv.writer(csvfile, delimiter=self.delim) |
| 302 | if writer_gen is not None: |
| 303 | #if first item of generator is a header of what the metrics mean then write header to csv file |
| 304 | if not skip_header: |
| 305 | header = (self.label_key,)+tuple(next(writer_gen))+(self.text_key,) |
| 306 | c.writerow(header) |
| 307 | for i, row in enumerate(writer_gen): |
| 308 | row = (self.Y[i],)+tuple(row)+(self.X[i],) |
| 309 | c.writerow(row) |
| 310 | else: |
| 311 | c.writerow([self.label_key, self.text_key]) |
| 312 | for row in zip(self.Y, self.X): |
| 313 | c.writerow(row) |
| 314 | |
| 315 | class json_dataset(data.Dataset): |
| 316 | """ |
no outgoing calls
no test coverage detected