存在2组值,一组为预测值,一组为实际值,现要求准确率和误报率是多少,并输出相应值

需求:存在2组值,一组为预测值,一组为实际值,现要求准确率和误报率是多少,并输出相应值

需求分析:可将这2组值存储为字典,数值本身可为键,字典的值为标记,可初始为0,可通过集合的常见操作(并集/交集/差集)可得相应的解决办法。

知识储备:

 1、集合的常见操作,并集/交集/差集;可参见:https://www.php.cn/python-tutorials-411416.html

 2、集合的访问/复制等,可参见:https://www.jb51.net/article/71264.htm

解决方案:存在2个字典dict1和dict2, dict1字典为预测的一组数值,dict2为实际值

dict1 = {'lily':0, 'kitty':0, 'dandy':0}

dict2 = {'nancy':0, 'kitty':0, 'lily':0}

# 预测出的值

# 通过keys()或者items()方法执行常见的集合操作(并集/差集/交集),如:

# 找出 在两个字典中读存在的键

# print(a.keys() & b.keys())

# 找出 存在a却不存在b的键

# print(a.keys() -b.keys())

# 找出两个字典中,键和值都同时相等的数据

# print(a.items() & b.items())

set1 = dict1.keys() & dict2.keys()

for keyin set1:

dict1[key] =1

    dict2[key] =1

precisionRate =len(set1)/len(dict2)

print("准确率是: %s" % precisionRate)

# 预测出的数值

for kin set1:

print(k)

falseRate = (len(dict1)-len(set1))/len(dict2)

print("误报率率是: %s" % falseRate)

# 误报的实际数值

for kin dict1.keys()-dict2.keys():

print(k)

你可能感兴趣的:(存在2组值,一组为预测值,一组为实际值,现要求准确率和误报率是多少,并输出相应值)