Java 用于根据一组点估计多项式的库
Java library for estimating a polynomial based on a set of points
多项式的次数应该是 # of points - 1
例如如果有 2 个点,它应该是一条线。
我知道我可以使用矩阵解决这个问题
例如如果有4个点:
多项式为 y = ax^3 + bx^2 + cx + d
,矩阵为
| y0 | | x0^3 x0^2 x0 1 | | a |
| y1 | = | x1^3 x1^2 x1 1 | x | b |
| y2 | | x2^3 x2^2 x2 1 | | c |
| y3 | | x3^3 x3^2 x3 1 | | d |
我可以解出 a,b,c,d。是否有库可以执行此操作,输入是点 {x0,y0} 到 {xn,xn}?
调查贾马
http://math.nist.gov/javanumerics/jama/ 特别是它的 QR 分解 class。
我目前正在写一些非常相似的东西,我发现这个来自普林斯顿的 CIS 程序非常有帮助。
http://introcs.cs.princeton.edu/java/97data/MultipleLinearRegression.java.html
唯一来自 Jama 的是它没有 return x 截距,所以你的方程中没有 d。
您也可以在 excel 中使用数据分析工具执行此操作,然后单击回归,然后 return 统计您的数据集和最适合您的数据的方程式。
多项式的次数应该是 # of points - 1
例如如果有 2 个点,它应该是一条线。
我知道我可以使用矩阵解决这个问题
例如如果有4个点:
多项式为 y = ax^3 + bx^2 + cx + d
,矩阵为
| y0 | | x0^3 x0^2 x0 1 | | a |
| y1 | = | x1^3 x1^2 x1 1 | x | b |
| y2 | | x2^3 x2^2 x2 1 | | c |
| y3 | | x3^3 x3^2 x3 1 | | d |
我可以解出 a,b,c,d。是否有库可以执行此操作,输入是点 {x0,y0} 到 {xn,xn}?
调查贾马 http://math.nist.gov/javanumerics/jama/ 特别是它的 QR 分解 class。
我目前正在写一些非常相似的东西,我发现这个来自普林斯顿的 CIS 程序非常有帮助。
http://introcs.cs.princeton.edu/java/97data/MultipleLinearRegression.java.html
唯一来自 Jama 的是它没有 return x 截距,所以你的方程中没有 d。
您也可以在 excel 中使用数据分析工具执行此操作,然后单击回归,然后 return 统计您的数据集和最适合您的数据的方程式。