我正在尝试使用此代码来计算特定深度处的重叠分数,以便在不同深度使用。
scale_x_discrete
但是,当我尝试运行此代码时出现错误:
def score(list1, list2, depth):
len_list = len(list1)
frac = numpy.ceil(depth * len_list)
frac = int(frac)
s = slice(0,frac)
list1 = list1[s]
list2 = list2[s]
return len(set(list1)&set(list2)) / float(len(set(list1) | set(list2)))
if __name__ == "__main__":
list1 = [2,4,6,8,10]
list2 = [1,2,3,4,5]
a = [numpy.arange(.01,1.01,.01)]
for i in a:
print(score(list1, list2, i))
这意味着变量深度实际上是变量a的列表(即[0.01,0.02..etc])。
我如何纠正这个问题,以便函数一次只接受参数'depth'的一个参数而不是整个列表?
由于
答案 0 :(得分:2)
凯文在评论中说,您的问题是您正在创建一个列表,其中包含代码a = [numpy.arange(.01,1.01,.01)]
中的另一个列表。只需删除额外的括号即可。