python - 显示嵌套字典的列
问题描述
我提取了一些加密货币数据,这些信息在嵌套字典中。我能够通过以下代码访问第一个字典的键以及价格和其他信息来“隔离”我想要的信息:
c = df['quote'][9]['USD']['price']
但是我想把它放在一张桌子上。我能够将字典转换为 DataFrame;但是,我无法将列内的嵌套字典从列中取出到它自己的数据框中来分配列。我想对所有 100 行执行此操作。我已经将数据框从 100 列转换为 1 列 100 行。数据框中的文本示例如下。我对python很陌生,但我尝试过函数,for循环,while循环。任何帮助,将不胜感激。
0 {'price': 13574.815756488579, 'volume_24h': 30...
1 {'price': 385.0299121331971, 'volume_24h': 137...
2 {'price': 1.00094922868182, 'volume_24h': 4848...
3 {'price': 0.23929041807117, 'volume_24h': 2399...
4 {'price': 262.15395834212285, 'volume_24h': 31...
这是引用(最高级别)字典中嵌套字典的样子(每行中的每个嵌套字典都包含以下所有信息):
#{'USD': {'price': 385.0299121331971,
#'volume_24h': 13795520312.19678,
#'percent_change_1h': 0.47915019,
#'percent_change_24h': -1.02234395,
#'percent_change_7d': -5.72396664,
#'market_cap': 43594479232.334625,
#'last_updated': '2020-10-30T22:10:03.000Z'}},
解决方案
您可以执行以下操作:
df = df['column_name'].apply(pd.Series)
其中 pd 是 pandas,df 是您的数据框,“column_name”是包含字典的列的名称。