繁体   English   中英

如何在 Python 中将此特定格式的 dict 转换为 CSV

[英]How to convert this specific format of dict to CSV in Python

我有一本由 id 唯一标识的人的字典。 现在我需要将 dict 转换为 csv 并将其写入路径。 但是我需要一个更有效的解决方案,因为我认为我的方法不适用于大型数据集。

Python 字典

names = {
  0: {
    "id": 0,
    "name": "William",
    "age": 19
  },
  1: {
    "id": 1,
    "name": "John",
    "age": 29
  },
  2: {
    "id": 2,
    "name": "Tim",
    "age": 42
  }
}

预期 output

id,name,age
0,William,19
1,John,29
2,Tim,42

我的尝试:

data = []

for key in names:
  person = names[key]

  data.append({
    "id": person["id"],
    "name": person["name"],
    "age": person["age"]
  })

df = pd.json_normalize(data)
df.to_csv('./persons.csv', index=False, na_rep='\"')

你有更有效的方法吗? 我无法更改我最初的 dict 结构。

尝试使用from_dict

pd.DataFrame.from_dict(names,'index')
Out[197]: 
   id     name  age
0   0  William   19
1   1     John   29
2   2      Tim   42

我的另一个尝试

df = pd.DataFrame.from_dict(products, orient='index').reset_index(drop=True)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM