假设我有这个csv文件:
Header1, Header2, Header3
key1, 1, 2
key2, 3, 4
我想将其转换为以下词典:
{Header2: {key1: 1, key2: 3}, Header3: {key1: 2, key2: 4}}
有一种简单的方法吗? 我尝试使用csv DictReader或pandas,但没有得到一个简单的方法,虽然这看起来像一个常见的用例。
答案 0 :(得分:2)
你可以使用大熊猫的to_dict
方法' DataFrame实例。例如:
import pandas as pd
df = pd.read_csv('file.csv', delimiter=r',\s+', index_col=0)
print(df.to_dict())
答案 1 :(得分:0)
您可以使用csv
模块执行此操作:
import csv
f = open(csv_file_path)
reader = csv.DictReader(f)
fieldnames = reader.fieldnames
result = {fieldname:{} for fieldname in fieldnames[1:]}
for row in reader:
for fieldname in fieldnames[1:]:
result[fieldname][row['Header1'].strip()] = row[fieldname].strip()