首页 > 解决方案 > 如何将字典列表转换为 DataFrame?

问题描述

我有一个格式类似于以下的字典列表。该列表是由我不想更改的其他函数生成的。因此,可以将列表及其字典的存在视为给定的。

dictlist=[]
for i in 1:20
  push!(dictlist, Dict(:a=>i, :b=>2*i))
end

有没有一种语法干净的方法可以将此列表转换为 DataFrame?

标签: julia

解决方案


您可以push!在中的行(由字典表示)

根据逐行构造的文档。

虽然正如文档所说,这比逐列构造要慢得多,但它并不比自己从字典中构造列慢。

df = DataFrame()
for row in dictlist
    push!(df, row)
end

目前有一个提议 来制作Vector{Dict}Tables.jl 行表类型。如果这样做了(这似乎可能在一个月左右发生)那么你就可以做到

df = DataFrame(dictlist)

推荐阅读