如何计算python中一组值的模数值?

问题描述 投票:0回答:1

在一种材料中,我找到了一个计算精度的公式,如下所示

enter image description here

这里a和b是一组值。经过互联网搜索后,我发现模数意味着剩余价值或绝对值。这里我将模数作为绝对值,上面公式的python代码如下所示

import numpy as np

def intersection(lst1, lst2):
    return list(set(lst1) & set(lst2))

a = [7,21]
b = [11, 7, 27, 21]

a_intersect_b=intersection(a,b)
print(" a_intersect_b : ",a_intersect_b)

mod_a_intersect_b=[abs(x) for x in a_intersect_b]
print("|a_intersect_b| : ",mod_a_intersect_b)

mod_a=[abs(x) for x in a]
print("|a| : ",mod_a)

numerator=np.array(mod_a_intersect_b, dtype=np.float)
denominator=np.array(mod_a, dtype=np.float)

print(" mod_a_intersect_b /  mod_a : ", numerator/denominator)

这里我得到2个输出值。但在材料和一般情况下,精度是单一值。如果列表大小增加,则输出值也会增加。最后我发现我误解了这里的模数含义。指导我按照上面的公式获得单精度值。提前致谢。

注意:在公式中,a和b是一组值。所以我在代码中使用了list。如果我使用其他选项在python中提到一组值,那么我也可以指导我获得单精度值。

python-3.x modulus
1个回答
2
投票

正如@Hoog在gis注释中提到的,在精度的情况下模数运算意味着某些集合的cardinality(只是集合中的一些元素),因此您可以定义如下的精度:

def precision(a, b):
    """
    a: set, relevant items
    b: set, retrieved items
    returns: float, precision value
    """
    return len(a & b) / len(a)

qazxsw poi返回集合中元素的数量,即基数,qazxsw poi操作。

如果len(a)|a|是列表,请先将它们包装成套:

a

此外,在数据科学和相关领域,精度是计算比率b的度量。这与其他术语中描述的相同 - 但精确的标准实现对您没有帮助。

© www.soinside.com 2019 - 2024. All rights reserved.