为了分析两个数据集预测值的差别,需要打印具有多个json对象的差别。
两个json文件内容大致如下图所示:
两个jison文件的question_id一样,每个id对应的answer可能不同。
具体实现代码:
import json as js
import difflib
import sys
f = open('data/css+v.json', encoding='UTF-8')
m = open('data/css.json', encoding='UTF-8')
x = js.load(f)
y = js.load(m)
n = 0
k = 0
for i in x: # 得到第一个json文件的一个对象
k = k + 1
for j in y: # 得到第二个json文件的一个对象
if i['question_id'] == j['question_id']: # 问题id相同时比较
if i['answer'] != j['answer']: # 当不同时输出差别
n = n + 1
print("question_id", i['question_id'])
print("i.answer", i['answer'])
print("j.answer", j['answer'])
print("k:", k)
print("n:", n)
output = sys.stdout
outputfile = open("data/2.txt", "a") # 将结果打印出来
sys.stdout = outputfile