函数缺少1个必需的位置参数

missing 1 required positional argument for a function(函数缺少1个必需的位置参数)
本文介绍了函数缺少1个必需的位置参数的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在使用Spyder IDE,并在定义输入后调用IPython外壳中的以下函数。但是,我得到了位置参数错误!也许这场争论有点问题,但我还是无法解决。你能帮帮我吗?代码如下:

def get_confusion_matrix(label, ref_label, mask):
    label = sitk.GetArrayFromImage(label)
    ref_label = sitk.GetArrayFromImage(ref_label)
    mask = sitk.GetArrayFromImage(mask)

    ref_label[(mask == 2) & (label > 0)] = label[(mask == 2) & (label > 0)]
    ref_label[(mask == 1) & (label == 0)] = 0
    return get_confusion_matrix(label.flatten(), ref_label.flatten())

def get_dices(label, ref_label, mask):
    cm = get_confusion_matrix(label, ref_label, mask)
    dice_st = 2*cm[1,1]/(np.sum(cm[:,1]) + np.sum(cm[1,:]))
    dice_sv = 2*cm[2,2]/(np.sum(cm[:,2]) + np.sum(cm[2,:]))
    return dice_st, dice_sv

TypeError:Get_Convension_Matrix()缺少1个必需的位置参数:‘MASK’

推荐答案

您已将get_confusion_matrix定义为接受3个参数:labelref_labelmask。错误是因为当您使用get_confusion_matrix(label.flatten(), ref_label.flatten())调用它时,您只向它传递了两个参数。

这篇关于函数缺少1个必需的位置参数的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Leetcode 234: Palindrome LinkedList(Leetcode 234:回文链接列表)
How do I read an Excel file directly from Dropbox#39;s API using pandas.read_excel()?(如何使用PANDAS.READ_EXCEL()直接从Dropbox的API读取Excel文件?)
subprocess.Popen tries to write to nonexistent pipe(子进程。打开尝试写入不存在的管道)
I want to realize Popen-code from Windows to Linux:(我想实现从Windows到Linux的POpen-code:)
Reading stdout from a subprocess in real time(实时读取子进程中的标准输出)
How to call type safely on a random file in Python?(如何在Python中安全地调用随机文件上的类型?)