python - 我正在将字典转换为 python 中的数据框,并且输出已更改
问题描述
我正在将字典转换为 python 中的数据框,并且输出已更改。我在这里写错了吗。在字典输出中,我们有 1 次源 ID,但在转换为 4 次数据帧源 ID 后,我希望 parsed_address 应该是多值的。我只希望数据框中的字典输出相同。
字典输出:
迪克--->
{
"source_id":123,
"parsed_address":[
{
"address_type":"Primary",
"address":[
{
"address_line_1":"18 Atherton",
"address_line_2":"nan"
}
]
},
{
"address_type":"directory",
"address":[
{
"address_line_1":"130 E Chapman Ave Apt 312",
"address_line_2":"nan"
}
]
},
{
"address_type":"home",
"address":[
{
"address_line_1":"9722 Walnut St",
"address_line_2":"nan"
}
]
},
{
"address_type":"work",
"address":[
{
"address_line_1":"1325 S Grand Ave",
"address_line_2":"nan"
}
]
}
]
}
数据帧输出:
[
{
"parsed_address":{
"address_type":"Primary",
"address":[
{
"address_line_1":"18 Atherton",
"address_line_2":null
}
]
},
"source_id":"90353002"
},
{
"parsed_address":{
"address_type":"directory",
"address":[
{
"address_line_1":"130 E Chapman Ave Apt 312",
"address_line_2":null
}
]
},
"source_id":"90353002"
},
{
"parsed_address":{
"address_type":"home",
"address":[
{
"address_line_1":"9722 Walnut St",
"address_line_2":null
}
]
},
"source_id":"90353002"
},
{
"parsed_address":{
"address_type":"work",
"address":[
{
"address_line_1":"1325 S Grand Ave",
"address_line_2":null
}
]
},
"source_id":"90353002"
}
]
代码
print("dic--->",dic)
df4 = pd.DataFrame(dic)
print("df4--->",df4)
Converted dictionary to dataframe and output has changed.
解决方案
这是标量值的回收。
这种行为也是您可以将标量分配给新列并且行数保持不变的原因。
您可以将解析后的地址包装到另一个列表中以获取单行。
推荐阅读
- angular - ng build 后 Angular 无法访问组件
- python - 在python中创建字典列表
- javascript - JSDocs 当前未启用对实验性语法“jsx”的支持
- c# - 无法将 DataGridViewComboBoxColumn 中的值设置为绑定的 DataGridView
- excel - 如何根据excel中的特定条件向上和向下舍入数字?
- powerbi - POWER BI:我希望 DAX 公式在我的主表中找出组的第一个最高值和第二个最高值
- arrays - 求范围 [l:r] 中数字重复的频率 (r-l+1)/2 次
- javascript - 我只想对这部分代码 ${a}\_${b} 使用 repeat(4) 并从重复中排除下划线以在评论中获得答案
- reactjs - 未出现在 WebStorm 中的 React Tailwind CSS 应用程序上的类的自动完成
- callback - 无法捕获 MQTT 日志回调