<p>嗨,我会试着帮你回答这个问题</p>
<p>报告说:</p>
<blockquote>
<p>Computes the “exact” solution, x, of the well-determined, i.e., full rank, linear matrix equation ax = b.</p>
</blockquote>
<p>注意矩阵上的假设</p>
<h3>Lambda相同</h3>
<p>如果点[x]和点[y]的<code>lambda</code>方程应该相同。然后连接所有向量</p>
<pre><code>x_new = np.concatenate([x,y])
vec1_new = np.concatenate([vec1_x,vec1_y])
...
</code></pre>
<p>假设这将过度决定您的系统,并且可能会。这意味着您有太多的方程,只有一个参数要确定(违反了确定良好的假设)。我的方法是使用最少的sqare</p>
<p>{a2}也有一个最小二乘法。式中,方程为<code>y = mx + c</code>求解。对于你的例子,这是<code>y</code>=point[x],<code>x</code>=vector2[x]和<code>c</code>=vector1[x]</p>
<p>这是从<a href="https://numpy.org/doc/stable/reference/generated/numpy.linalg.lstsq.html" rel="nofollow noreferrer">numpy.linagl.lstsq</a>示例复制的:</p>
<pre><code>x = np.array([0, 1, 2, 3])
y = np.array([-1, 0.2, 0.9, 2.1])
A = np.vstack([x, np.ones(len(x))]).T # => horizontal stack
m, c = np.linalg.lstsq(A, y, rcond=None)[0]
</code></pre>
<h3>Lambda不同</h3>
<p>如果lambda不同。将vector2[x]和vector2[y]水平堆叠,就可以找到<code>[lambda_1, lambda_2]</code>。可能还有比lambds更多的方程,你会找到一个最小二乘解</p>
<h3>注</h3>
<p>请记住,即使您从一条直线和一个固定的lambda构建系统。由于舍入和数值差异,您可能需要使用最小二乘法</p>