pandas - 删除 Pandas pd.to_dict 中的空白键条目

标签 pandas dictionary

Pandas 有一个非常好的功能,可以通过 pd.to_dict('records') 将我们的数据帧导出到字典列表中。 .

例如:

d = pd.DataFrame({'a':[1,2,3], 'b':['a', 'b', None]}) 
d.to_dict('records')

返回
[{'a': 1, 'b': 'a'}, {'a': 2, 'b': 'b'}, {'a': 3, 'b': None}]

对于我的用例,我更喜欢以下条目:
[{'a': 1, 'b': 'a'}, {'a': 2, 'b': 'b'}, {'a': 3}]

在哪里可以看到b的 key 从第三个条目中删除。这是使用 jsonlite 时 R 中的默认行为,并且想知道如何从每个条目中删除缺少值的键。

最佳答案

我们可以做 stack

l=d.stack().groupby(level=0).agg(lambda x : x.reset_index(level=0,drop=True).to_dict()).tolist()
Out[142]: [{'a': 1, 'b': 'a'}, {'a': 2, 'b': 'b'}, {'a': 3}]

关于pandas - 删除 Pandas pd.to_dict 中的空白键条目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62330931/

相关文章:

python - 带有值的多索引数据框的字典列表列表

c++ - 尝试绘制 Sprite 图时出现 sfml 错误

c# - 检测哈希表或字典中的重新散列或冲突

python - 将 pandas 列中除第一个之外的重复数字替换为 NAN 值

python - 在 Dataframe 中的特定位置添加列

python - 我想根据每个 deviceId 过滤行并对这些行执行一些操作。 ( Pandas )

python - 重击 : Python import - Command not found for pandas

python - 为什么我没有收到字典的属性 '__getitem__' 错误?

python - 如何将字典中的数值缩放到 0 到 1 的范围

c# - 有没有办法使用键搜索以多种方式搜索字典?