java实现线性回归方程
时间: 2023-08-16 20:04:20 浏览: 39
以下是Java实现线性回归方程的示例代码:
```java
public class LinearRegression {
private double[] xValues;
private double[] yValues;
private double slope;
private double intercept;
public LinearRegression(double[] x, double[] y) {
this.xValues = x;
this.yValues = y;
calculate();
}
private void calculate() {
double sumX = 0.0, sumY = 0.0, sumXY = 0.0, sumXX = 0.0;
int n = xValues.length;
for (int i = 0; i < n; i++) {
sumX += xValues[i];
sumY += yValues[i];
sumXY += (xValues[i] * yValues[i]);
sumXX += (xValues[i] * xValues[i]);
}
slope = (n * sumXY - sumX * sumY) / (n * sumXX - sumX * sumX);
intercept = (sumY - slope * sumX) / n;
}
public double getSlope() {
return slope;
}
public double getIntercept() {
return intercept;
}
public static void main(String[] args) {
double[] x = {1, 2, 3, 4, 5};
double[] y = {2, 4, 5, 4, 5};
LinearRegression lr = new LinearRegression(x, y);
System.out.println("Slope: " + lr.getSlope());
System.out.println("Intercept: " + lr.getIntercept());
}
}
```
在这个示例代码中,我们通过输入x和y值来创建一个线性回归对象。然后,我们使用calculate()方法来计算斜率和截距。最后,我们可以使用getSlope()和getIntercept()方法来获取斜率和截距的值。在main()方法中,我们提供了一些随机的x和y值来测试线性回归方程。