You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

将API多段JSON响应存入带独立列名的Pandas DataFrame

将多段JSON响应整合到单个Pandas DataFrame的方法

你的JSON响应包含三个独立的JSON片段,对应同一账户(2130005)的不同数据维度,可以通过以下步骤将所有数据整合到单个DataFrame中:

步骤1:解析JSON字符串

先把每个JSON字符串转换成Python字典/列表对象,使用json模块处理:

import json
import pandas as pd

# 原始JSON响应(已处理转义字符)
raw_json = [
    '{"accountNumber":"2130005","billDayModelName":"","billDayModelScore":"0","defaultBadWriteOffModelName":"XYZ","defaultBadWriteOffModelScore":600.677286,"accountModelName":"","accountModelScore":"0","customerModelName":"","customerModelScore":"0","accountRiskCode":"","customerRiskCode":""}',
    '{"ACCTNBR":"2130005","PREV3MOTOTAMT":0,"PREV3CALL":1,"DAY_SYNC":4,"STD_DVTN":79.72,"MNTHCNT":2,"AVG_AMT":0,"PMT_CNT":0}',
    '[{"ACCT_NBR":2130005,"ACCOUNT_SCORE":0.8,"BHVR_SCR":380}]'
]

# 解析每个片段
data1 = json.loads(raw_json[0])
data2 = json.loads(raw_json[1])
data3 = json.loads(raw_json[2])[0]  # 提取列表内的字典对象

步骤2:转换为DataFrame并合并

将解析后的对象转为DataFrame,再基于账户号字段合并(三个片段的账户名字段分别为accountNumber、ACCTNBR、ACCT_NBR,需指定对应合并键):

# 转换为单条记录的DataFrame
df1 = pd.DataFrame([data1])
df2 = pd.DataFrame([data2])
df3 = pd.DataFrame([data3])

# 逐步合并DataFrame
merged_df = df1.merge(df2, left_on='accountNumber', right_on='ACCTNBR')
merged_df = merged_df.merge(df3, left_on='accountNumber', right_on='ACCT_NBR')

# 可选:删除重复的账户号列,保留统一的accountNumber字段
merged_df = merged_df.drop(columns=['ACCTNBR', 'ACCT_NBR'])

最终效果

执行后merged_df会包含所有字段,结构示例如下:

accountNumberbillDayModelNamebillDayModelScoredefaultBadWriteOffModelNamedefaultBadWriteOffModelScoreaccountModelNameaccountModelScorecustomerModelNamecustomerModelScoreaccountRiskCodecustomerRiskCodePREV3MOTOTAMTPREV3CALLDAY_SYNCSTD_DVTNMNTHCNTAVG_AMTPMT_CNTACCOUNT_SCOREBHVR_SCR
21300050XYZ600.677286001479.722000.8380

注意事项

  • 若后续有多个账户数据,只要每个JSON片段对应同一账户,该合并逻辑依然适用
  • 若存在字段类型不一致(如账户号有的是字符串有的是整数),可先统一类型再合并,例如df2['ACCTNBR'] = df2['ACCTNBR'].astype(str)

内容的提问来源于stack exchange,提问作者Debasis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 00:22:42