我在 MATLAB 中有这行代码,是别人写的:
c=a.'/b
我需要将它翻译成 Python。 a、b、c 都是数组。我目前用于测试代码的维度是:
一个:18x1,
b: 25x18,
这给了我尺寸为 1x25 的 c。
数组不是正方形的,但如果它们是正方形的,我不希望代码失败。有人能准确解释这条线在做什么(数学上),以及如何在 Python 中做到这一点吗? (即,如果 Python 中存在 MATLAB 中的内置 mrdivide 函数,它是否等效?)
最佳答案
线
c = a.' / b
计算方程 c b = aT 对于 c 的解。 Numpy 没有直接执行此操作的运算符。相反,您应该为 cT 求解 bT cT = a 并转置结果:
c = numpy.linalg.lstsq(b.T, a.T)[0].T
关于python - 数组除法——从 MATLAB 到 Python 的翻译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1001634/