嘿,伙计们,我一直在转换一些json文本,我从一个API接收,我注意到有些人使用json_normalize,但在我的情况下,它不能解决整个问题,我想知道是否有人可以帮助。
my_json = [
{
"total": "null",
"items": [
{
"key": "time",
"label": "Time",
"value": "2022-12-13T23:59:59.939-07:00"
},
{
"key": "agentNotes",
"label": "Agent Notes",
"value": "null"
},
{
"key": "blindTransferToAgent",
"label": "Blind Transfer To Agent",
"value": "0"
}]},
{"total": "null",
"items": [
{
"key": "time",
"label": "Time",
"value": "2022-12-13T23:59:59.939-07:00"
},
{
"key": "agentNotes",
"label": "Agent Notes",
"value": "null"
},
{
"key": "blindTransferToAgent",
"label": "Blind Transfer To Agent",
"value": "0"
}
]}]
df = pd.json_normalize(my_json, ["items"])
print(df)
这会得到这样的结果
一个一个二个一个一个一个三个一个
但我尝试将键创建为列,将值创建为值,因此最终结果如下所示。
时间座席注解盲转接至座席
2022年12月13日23时59分59秒939分07时零
任何帮助都将不胜感激。
2条答案
按热度按时间i7uq4tfw1#
我没有找到解决这个问题的捷径,也许有人能给我们一些启发。
然而,解决方案不是那么长,所以我想张贴它无论如何。
如果我没有阅读错你的问题,你的“JSON”并不是真正的JSON,它是一个包含两个键
total
和items
的字典的列表,items
的值是字典的列表,所以我们可以迭代这些值,并从每个字典中获取key
-value
元素:其输出:
解释:
key
的值插入到我们的“JSON”中DataFrame
--如果这些值的长度不同,则调整索引的方向并转置。(例如,还有一个值为1
的blindTransferToAgent
)如果JSON看起来像这样,则进行处理:它将输出:
62lalag42#
尝试更改此设置:
变成这样:
Pandas DataFrame对象中的
T
属性存储索引和列的换位,这就是您要查找的内容。输出: