(filename, types)
| 17 | |
| 18 | |
| 19 | def read_csv_as_columns(filename, types): |
| 20 | columns = collections.defaultdict(list) |
| 21 | with open(filename) as f: |
| 22 | rows = csv.reader(f) |
| 23 | headers = next(rows) |
| 24 | for row in rows: |
| 25 | for name, func, val in zip(headers, types, row): |
| 26 | columns[name].append(func(val)) |
| 27 | |
| 28 | return DataCollection(columns) |
| 29 | |
| 30 | if __name__ == '__main__': |
| 31 | import tracemalloc |
no test coverage detected