字典列表中的熊猫阵列



我有一个像这样的词典列表

[{"Key":[val1,val2,...]}, {"Key2":[val1,val2,...]}, ...]

我想将其转换为键是列标题的CSV格式,他值形成列值

为此,我打算使用pandas DataFrame(很容易导出到CSV),但是我无法弄清楚如何将我的值纳入数据框架。

我已经尝试过myPanda = pd.DataFrame.from_records(data),但是a,毫无用处。

我假设您的密钥是唯一的,否则这没什么意义。

选项1

  1. 将您的字典合并到单个dict
  2. 将dict传递给pd.DataFrame
  3. 使用df.to_csv
  4. 保存为CSV
dct = [{...}, {...}, ...]
r = {}
for d in dct:
    r.update(d)
pd.DataFrame(r).to_csv('file.csv')

选项2
使用cytoolz,字典合并还有另一种可能性 -

from cytoolz.dicttoolz import merge
df = pd.DataFrame(merge(*dct))

选项3
创建单独的数据框并加入它们 -

df = pd.concat(list(map(pd.DataFrame, dct)), axis=1)

即使您的列表不平坦,此选项也有效。


信用pirSquared用于最后两个解决方案!。

最新更新