很多图表库都支持散点图的线性回归分析,可以显示线性回归很典型就是google
chart与highchart都支持这个功能,通过散点数据计算线性回归得到公式,然后
插值生成即可。
线性回归数据分析
线性回归分析,用来对一组数据实现线性建模,分析线性走势,从而实现对未来
数据的走势预期,线性回归分析是最简单也是最基础的数据回归分析。
数学基础
抽取数据,计算线性回归计算,得到等式y = a + bx;
最重要的就是要得到斜率b与相关因子a。假设数据集D为(年龄与葡萄糖含量对比)
package com.gloomyfish.image.game; public class LineRegressionDemo { private double slope; private double intrepter; private double[][] xyData; public LineRegressionDemo(double[][] data) { this.xyData = data; } public void calculate() { double sumx=0, sumy=0, sumxy=0, sumxx=0, sumyy=0; for(int i=0; i<xyData.length; i++) { sumx += xyData[i][0]; sumy += xyData[i][1]; sumxy += xyData[i][0] * xyData[i][1]; sumxx += xyData[i][0] * xyData[i][0]; sumyy += xyData[i][1] * xyData[i][1]; } double n = xyData.length; intrepter = ((sumy * sumxx) - sumx * sumxy)/(n*sumxx - (sumx *sumx)); slope = (n * sumxy - (sumx* sumy))/(n*sumxx - (sumx * sumx)); System.out.println("slope = " + slope); System.out.println("intrepter = " + intrepter); } public static void main(String[] args) { double[][] data = new double[][]{{43, 99},{21,65}, {25, 79}, {42, 75}, {57,87}, {59,81}}; LineRegressionDemo demo = new LineRegressionDemo(data); demo.calculate(); } }
对明天最好的准备就是不要虚度今日,算是对自己的勉励!