⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 regressiontests.java

📁 用于制作报表的中间件控件,纯java编写,还附带有数据库操作的源代码
💻 JAVA
字号:
/* =========================================================== * JFreeChart : a free chart library for the Java(tm) platform * =========================================================== * * (C) Copyright 2000-2007, by Object Refinery Limited and Contributors. * * Project Info:  http://www.jfree.org/jfreechart/index.html * * This library is free software; you can redistribute it and/or modify it  * under the terms of the GNU Lesser General Public License as published by  * the Free Software Foundation; either version 2.1 of the License, or  * (at your option) any later version. * * This library is distributed in the hope that it will be useful, but  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY  * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public  * License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with this library; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301,  * USA.   * * [Java is a trademark or registered trademark of Sun Microsystems, Inc.  * in the United States and other countries.] * * -------------------- * RegressionTests.java * -------------------- * (C) Copyright 2002-2007, by Object Refinery Limited and Contributors. * * Original Author:  David Gilbert (for Object Refinery Limited); * Contributor(s):   -; * * Changes * ------- * 30-Sep-2002 : Version 1 (DG); * 17-Oct-2002 : Fixed errors reported by Checkstyle (DG); * */package org.jfree.data.statistics.junit;import junit.framework.Test;import junit.framework.TestCase;import junit.framework.TestSuite;import org.jfree.data.statistics.Regression;import org.jfree.data.xy.XYDataset;import org.jfree.data.xy.XYSeries;import org.jfree.data.xy.XYSeriesCollection;/** * Tests for the {@link Regression} class. */public class RegressionTests extends TestCase {    /**     * Returns the tests as a test suite.     *     * @return The test suite.     */    public static Test suite() {        return new TestSuite(RegressionTests.class);    }    /**     * Constructs a new set of tests.     *     * @param name  the name of the tests.     */    public RegressionTests(String name) {        super(name);    }    /**     * Checks the results of an OLS regression on sample dataset 1.     */    public void testOLSRegression1a() {        double[][] data = createSampleData1();        double[] result1 = Regression.getOLSRegression(data);        assertEquals(.25680930, result1[0], 0.0000001);        assertEquals(0.72792106, result1[1], 0.0000001);    }    /**     * Checks the results of an OLS regression on sample dataset 1 AFTER      * converting it to an XYSeries.     */    public void testOLSRegression1b() {        double[][] data = createSampleData1();        XYSeries series = new XYSeries("Test");        for (int i = 0; i < 11; i++) {            series.add(data[i][0], data[i][1]);        }        XYDataset ds = new XYSeriesCollection(series);        double[] result2 = Regression.getOLSRegression(ds, 0);        assertEquals(.25680930, result2[0], 0.0000001);        assertEquals(0.72792106, result2[1], 0.0000001);    }    /**     * Checks the results of a power regression on sample dataset 1.     */    public void testPowerRegression1a() {        double[][] data = createSampleData1();        double[] result = Regression.getPowerRegression(data);        assertEquals(0.91045813, result[0], 0.0000001);        assertEquals(0.88918346, result[1], 0.0000001);    }    /**     * Checks the results of a power regression on sample dataset 1 AFTER      * converting it to an XYSeries.     */    public void testPowerRegression1b() {        double[][] data = createSampleData1();        XYSeries series = new XYSeries("Test");        for (int i = 0; i < 11; i++) {            series.add(data[i][0], data[i][1]);        }        XYDataset ds = new XYSeriesCollection(series);        double[] result = Regression.getPowerRegression(ds, 0);        assertEquals(0.91045813, result[0], 0.0000001);        assertEquals(0.88918346, result[1], 0.0000001);    }    /**     * Checks the results of an OLS regression on sample dataset 2.     */    public void testOLSRegression2a() {        double[][] data = createSampleData2();        double[] result = Regression.getOLSRegression(data);        assertEquals(53.9729697, result[0], 0.0000001);        assertEquals(-4.1823030, result[1], 0.0000001);    }    /**     * Checks the results of an OLS regression on sample dataset 2 AFTER      * converting it to an XYSeries.     */    public void testOLSRegression2b() {        double[][] data = createSampleData2();        XYSeries series = new XYSeries("Test");        for (int i = 0; i < 10; i++) {            series.add(data[i][0], data[i][1]);        }        XYDataset ds = new XYSeriesCollection(series);        double[] result = Regression.getOLSRegression(ds, 0);        assertEquals(53.9729697, result[0], 0.0000001);        assertEquals(-4.1823030, result[1], 0.0000001);    }    /**     * Checks the results of a power regression on sample dataset 2.     */    public void testPowerRegression2a() {        double[][] data = createSampleData2();        double[] result = Regression.getPowerRegression(data);        assertEquals(106.1241681, result[0], 0.0000001);        assertEquals(-0.8466615, result[1], 0.0000001);    }    /**     * Checks the results of a power regression on sample dataset 2 AFTER      * converting it to an XYSeries.     */    public void testPowerRegression2b() {        double[][] data = createSampleData2();        XYSeries series = new XYSeries("Test");        for (int i = 0; i < 10; i++) {            series.add(data[i][0], data[i][1]);        }        XYDataset ds = new XYSeriesCollection(series);        double[] result = Regression.getPowerRegression(ds, 0);        assertEquals(106.1241681, result[0], 0.0000001);        assertEquals(-0.8466615, result[1], 0.0000001);    }    /**     * Creates and returns a sample dataset.     * <P>     * The data is taken from Table 11.2, page 313 of "Understanding Statistics"     * by Ott and Mendenhall (Duxbury Press).     *     * @return The sample data.     */    private double[][] createSampleData1() {        double[][] result = new double[11][2];        result[0][0] = 2.00;        result[0][1] = 1.60;        result[1][0] = 2.25;        result[1][1] = 2.00;        result[2][0] = 2.60;        result[2][1] = 1.80;        result[3][0] = 2.65;        result[3][1] = 2.80;        result[4][0] = 2.80;        result[4][1] = 2.10;        result[5][0] = 3.10;        result[5][1] = 2.00;        result[6][0] = 2.90;        result[6][1] = 2.65;        result[7][0] = 3.25;        result[7][1] = 2.25;        result[8][0] = 3.30;        result[8][1] = 2.60;        result[9][0] = 3.60;        result[9][1] = 3.00;        result[10][0] = 3.25;        result[10][1] = 3.10;        return result;    }    /**     * Creates a sample data set.     *     * @return The sample data.     */    private double[][] createSampleData2() {        double[][] result = new double[10][2];        result[0][0] = 2;        result[0][1] = 56.27;        result[1][0] = 3;        result[1][1] = 41.32;        result[2][0] = 4;        result[2][1] = 31.45;        result[3][0] = 5;        result[3][1] = 30.05;        result[4][0] = 6;        result[4][1] = 24.69;        result[5][0] = 7;        result[5][1] = 19.78;        result[6][0] = 8;        result[6][1] = 20.94;        result[7][0] = 9;        result[7][1] = 16.73;        result[8][0] = 10;        result[8][1] = 14.21;        result[9][0] = 11;        result[9][1] = 12.44;        return result;    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -