A是一组实数。真的很困惑这条线的作用。分子看起来像是采用不包含最小值的A子集。分母似乎是范围。如何将得到的子集除以范围?或者这可能不是分子在做什么?
A <- (A - min(A)) * (max(A) - min(A))^-1
答案 0 :(得分:0)
^ - 1表示取矩阵逆而不是倒数
假设A是实数矩阵,则表达式可以按如下方式分解:
let mna = min(A) : Scalar - the minimum value of A
let mxa = max(A) : Scalar - the maximum value of A
let N = (A-min(A)) = Array - Scalar - each element of A minus mna
let X = (A-max(A)) ... minus mxa
所以我们有 N *逆(X)
......如果我戴上眼镜并正确阅读表达而不是A&lt; - (A - min(A))*(A - max(A))^ - 1 < / p>
然而,由于表达式实际上是A&lt; - (A - min(A))*(max(A) - min(A))^ - 1,因此说明不同。
N的表达式是相同的(尽管我注意到形式的表达式(array - scalar / conformable-array)意味着减去;它不是数组元素删除操作。)
然而,(max(A) - min(A))是它的样子,A的最大值减去它的最小值,并且在这种情况下^ -1确实意味着除。
因此,表达式返回A,所有值都缩放到0(== min(A))和1(== max(A))之间。
表达式开头的&lt; - 是Mathcad的本地定义运算符(用于在Mathcad中指定值&#34; program&#34;)并简单地将A的归一化值赋值给A 。