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

将IBM情感分析JSON转为pandas表格时报ValueError如何解决

错误原因

你调用pd.read_json()直接解析情感响应JSON时报错,核心原因是你拿到的JSON结构层级不匹配:targets对应的值是包含字典的列表,document对应的值是单个独立字典,两者结构、长度都不一致,pandas默认的解析逻辑无法对齐这两类数据生成规范表格,因此抛出了「混合字典与非序列可能导致顺序歧义」的错误。
另外你不需要把response['sentiment']先序列化为JSON字符串再用pandas读取,直接操作原始的Python字典对象更简单高效。

解决方法

直接从原始响应中提取你需要的字段,手动构造符合要求的DataFrame即可:

# 提取情感数据
sentiment_data = response["sentiment"]
# 提取文档级得分
doc_score = sentiment_data["document"]["score"]
# 遍历所有target构造行数据(适配单个/多个target的场景)
table_rows = []
for target_item in sentiment_data["targets"]:
    table_rows.append({
        "Text": target_item["text"],
        "text score": target_item["score"],
        "Document score": doc_score
    })
# 转成pandas DataFrame
result_df = pd.DataFrame(table_rows)
# 查看结果
print(result_df)

运行上述代码即可得到你需要的Text | text score | Document score格式的表格,如果需要保留情感标签,只要在构造字典时额外加"text label": target_item["label"]、"Document label": sentiment_data["document"]["label"]字段即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 23:36:03