将字典导出到csv文件:d = {键:值}值是一个列表

问题描述 投票:0回答:1

我正在尝试将字典输出为CSV文件。但是我没有正确地做到这一点。我的输出文件看起来非常糟糕。有谁知道如何将来自相同键的值放在同一列中?


dico={'names': ['Jimmy', 'Drew'], 'age':[25, 30]}
df = pd.DataFrame.from_dict([dico])
df.to_csv('file.csv', sep='\t',header=True, index=False, mode='w')


#output file looks like this:
age names
[25, 30]    ['Jimmy', 'Drew']

我也尝试过:

with open('mycsvfile.csv','w' ) as f:
    w = csv.DictWriter(f, fieldnames = dico.keys())
    w.writeheader()
    w.writerow(dico)

但问题是相同的

谢谢,

python pandas csv dictionary export-to-csv
1个回答
0
投票

问题在于创建数据框。如果您看一下df,每个单元格都包含一个数组:

>>> df
        age          names
0  [25, 30]  [Jimmy, Drew]

将创建行替换为:

df = pd.DataFrame.from_dict(dico)

并且csv将根据需要保存。

© www.soinside.com 2019 - 2024. All rights reserved.