python_reference/useful_scripts/read_csv_to_dict.py
2014-04-10 12:29:13 -04:00

22 lines
697 B
Python

# Sebastian Raschka, 03/2014
def read_csv(csv_path):
"""
Read a csv file (with a header) into a dictionary
where the dictionary structure will be
{header_col1: [val1_line1, val1_line2, ...], header_col2: [val2_line1, val2_line2, ...], ...}
"""
with open(csv_path, 'r') as in_csv:
header = in_csv.readline().strip().split(',')
data = {i:[] for i in header}
for line in in_csv:
line = line.strip().split(',')
for i in range(len(line)):
try:
data[header[i]].append(float(line[i]))
except ValueError:
data[header[i]].append(line[i])
return data