列表中的几个字典到数据框的列
Posted
技术标签:
【中文标题】列表中的几个字典到数据框的列【英文标题】:Several dictionaries in a list to columns of a dataframe 【发布时间】:2021-12-08 14:48:36 【问题描述】:我有一个字典列表示例,如下所示
NaN = np.nan
cols = [ 'A':['Orange', 'Lemon', NaN, 'Peach'],
'B':['Tiger', NaN, NaN, 'Lion'],
'C':['London', 'New York', 'Bangalore', NaN],
'D':['Cricket', 'BaseBall', 'Football', 'Tennis']
]
我想将其转换为数据框的列。字典的键应该是列名。这些值应该是数据框的相应行。
最终输出应如下图所示。
非常感谢任何帮助。谢谢!
【问题讨论】:
这能回答你的问题吗? Convert Python dict into a dataframe @Mahrkeenerh 不,它没有。我的情况与您标记我的帖子不同。请务必查看并注意其中的区别。谢谢。 当前问题是cols
不是python
中的有效结构。但假设它是,你可能只是扁平化然后构建 -> df = pd.DataFrame(k: v for d in cols for k, v in d.items())
How do I merge a list of dicts into a single dict?
@HenryEcker 我已经编辑了这个问题。这些值都是字符串数据类型,除了 NaN。
【参考方案1】:
import pandas as pd
cols = [ 'A':['Orange', 'Lemon', 'NaN', 'Peach'],
'B':['Tiger', 'NaN', 'NaN', 'Lion'],
'C':['London', 'New York', 'Bangalore', 'NaN'],
'D':['Cricket', 'BaseBall', 'Football', 'Tennis']
]
df = pd.DataFrame(k: v for d in cols for k, v in d.items())
【讨论】:
以上是关于列表中的几个字典到数据框的列的主要内容,如果未能解决你的问题,请参考以下文章
我正在尝试在另一个数据框的列中查找数据框中的列的元素,但 index() 对我不起作用
Python Pandas:如何在数据框的列中拆分已排序的字典