Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/291.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
需要帮助将矩阵公式翻译成Python代码吗_Python_Math_Matrix - Fatal编程技术网

需要帮助将矩阵公式翻译成Python代码吗

需要帮助将矩阵公式翻译成Python代码吗,python,math,matrix,Python,Math,Matrix,我是Python新手,需要一些帮助将以下公式翻译成Python代码: 我目前正在和numpy一起解决这个问题,但进展甚微甚至没有。任何参考资料都将不胜感激。这里有一种可能性。一些假设在评论中。当然,还有其他方法可以做到这一点。第二个公式分母中集合的大小可以更简单地表示为集合或列表的长度,但我的方法避免了集合/列表的内存使用,并且与分子更一致 def formula1(X, n, a, b): """Return the first formula for matrix X, size n

我是Python新手,需要一些帮助将以下公式翻译成Python代码:


我目前正在和numpy一起解决这个问题,但进展甚微甚至没有。任何参考资料都将不胜感激。

这里有一种可能性。一些假设在评论中。当然,还有其他方法可以做到这一点。第二个公式分母中集合的大小可以更简单地表示为集合或列表的长度,但我的方法避免了集合/列表的内存使用,并且与分子更一致

def formula1(X, n, a, b):
    """Return the first formula for matrix X, size n, and indices a and b.
    """
    return sum(X[a][t] - X[b][t] for t in range(1, n+1)) / n

def formula2(X, n, i, j, x, y, a, P):
    """Return the second formula for matrix X, size n, indices i, j, x, and y,
    array or mapping a, array or mapping of sets P.
    """
    numer = sum(abs(X[i][t] - X[j][t])
                for t in range(1, n+1)
                if a[t] in P[x] or a[t] in P[y])
    denom = sum(1
                for t in range(1, n+1)
                if a[t] in P[x] or a[t] in P[y])
    return numer / denom

第二个公式是什么意思?它的作用是什么?求和的迭代变量是什么?在这种情况下,集合的绝对值是如何定义的?@SvenKrüger这两个公式都是用来计算给定矩阵中两个变量之间的距离。迭代变量n是矩阵中的行数。我不知道你定义绝对值是什么意思。抱歉,lackn是迭代变量的最后一个值。在第一个公式中,t是迭代变量。第二个公式中的a_t,i,j,P_x和P_y是什么?。。。绝对值如下所示| x |。那么什么是集合的绝对值呢?@SvenKrüger对于第二个等式,假设集群信息:row_i∈ P_x和row_j∈ P_y|{a_t∈ 普克斯⋁ a\u t∈ P_y}是簇P_x和P_y并集中的列数。我不确定,但我相信绝对值是从数据库提供的矩阵中推导出来的。通常使用集合上的绝对值符号来表示集合的大小。在这种情况下,这很有意义:请看分子中的总和。我更关心的是a在两个公式中的不同含义。在第一个公式中,a似乎是一个常数索引。在第二个公式中,它似乎是一个列表或映射,其中t是索引或键。这两种情况真的应该有所不同吗?另一个问题:您希望代码使用纯Python还是应该使用numpy模块?