将字典列表转换为数据框时处理缺失值

问题描述

在将 listdictionaries 转换为 Pandas dataframe 时,有没有办法处理缺失值?有时 dictionary 条目的顺序不同,所以我必须分别处理每一列。

这是一个例子:

p = [
 {'c': 53.13,'n': 1,'t': 1575050400000},{'t': 1575048600000,'c': 53.11}
  ]

这是我一直在尝试的:

import pandas as pd
df = pd.DataFrame([{
        "c": t["c"],"n": t["n"],"t": t['t']}
        for t in p])

我得到一个 KeyError: 'n',因为第二个 dictionary 中缺少 'n' 的条目。是否有一种处理方法,只需在条目丢失时输入 NaN

解决方法

您可以从 p 实例化一个 DataFrame 作为参数:

df = pd.DataFrame(p)
df

输出:

       c    n              t
0  53.13  1.0  1575050400000
1  53.11  NaN  1575048600000