numpy.linalg.lstsq相当于Apache Commons Math Java库?

时间:2011-02-15 23:18:32

标签: java python math scipy apache-commons

我有以下对numpy.linalg.lstsq的调用:

http://docs.scipy.org/doc/numpy/reference/generated/numpy.linalg.lstsq.html

x = [[0.69314718]  [1.09861229]  [1.38629436]  [1.60943791]  [1.79175947]  [1.94591015]]

y = [0. 0.20273255 0.5815754 0.7520387 0.96885669 1.09861229]

l = numpy.linalg.lstsq(x,y)

返回

l - >元组:(array([0.46323573]),array([0.25872885]),1,array([3.63269497]))

有人可以在

中指出等效函数(如果可用)

http://commons.apache.org/math/

(或者可能在其他一些Java数学库中......)

1 个答案:

答案 0 :(得分:2)

感谢指针Joe。

以下是供参考的代码:

double[][] testSquare = {{0.69314718}, {1.09861229}, {1.38629436}, {1.60943791}, {1.79175947}, {1.94591015}};
RealMatrix matrix = MatrixUtils.createRealMatrix(testSquare);
SingularValueDecomposition svd = new SingularValueDecomposition(matrix);
DecompositionSolver ds=svd.getSolver();
double[] b = {0.0, 0.20273255, 0.5815754, 0.7520387, 0.96885669, 1.09861229};
ds.solve(b)[0];