Example 3: Samples

Consider the Wolfer Sunspot Data (Anderson 1971, p. 660) consisting of the number of sunspots observed each year from 1749 through 1924. In this example, the getSamples() method is used to generate five pseudorandom samples from the set of 176 observations of Wolfer sunspot data. The sampled indices are returned via getIndices() .


import com.imsl.stat.*;
import com.imsl.math.PrintMatrix;
import com.imsl.math.PrintMatrixFormat;

public class RandomSamplesEx3 {

    public static void main(String[] args) {
        double[][] x = {
            {1749.0, 80.9}, {1750.0, 83.4},
            {1751.0, 47.7}, {1752.0, 47.8},
            {1753.0, 30.7}, {1754.0, 12.2},
            {1755.0, 9.6}, {1756.0, 10.2},
            {1757.0, 32.4}, {1758.0, 47.6},
            {1759.0, 54.0}, {1760.0, 62.9},
            {1761.0, 85.9}, {1762.0, 61.20},
            {1763.0, 45.0}, {1764.0, 36.4},
            {1765.0, 20.9}, {1766.0, 11.4},
            {1767.0, 37.8}, {1768.0, 69.8},
            {1769.0, 106.1}, {1770.0, 100.8},
            {1771.0, 81.6}, {1772.0, 66.5},
            {1773.0, 34.8}, {1774.0, 30.6},
            {1775.0, 7.0}, {1776.0, 19.8},
            {1777.0, 92.5}, {1778.0, 154.4},
            {1779.0, 125.9}, {1780.0, 84.8},
            {1781.0, 68.1}, {1782.0, 38.5},
            {1783.0, 22.8}, {1784.0, 10.2},
            {1785.0, 24.1}, {1786.0, 82.9},
            {1787.0, 132.0}, {1788.0, 130.9},
            {1789.0, 118.1}, {1790.0, 89.9},
            {1791.0, 66.6}, {1792.0, 60.0},
            {1793.0, 46.9}, {1794.0, 41.0},
            {1795.0, 21.3}, {1796.0, 16.0},
            {1797.0, 6.4}, {1798.0, 4.1},
            {1799.0, 6.8}, {1800.0, 14.5},
            {1801.0, 34.0}, {1802.0, 45.0},
            {1803.0, 43.1}, {1804.0, 47.5},
            {1805.0, 42.2}, {1806.0, 28.1},
            {1807.0, 10.1}, {1808.0, 8.1},
            {1809.0, 2.5}, {1810.0, 0.0},
            {1811.0, 1.4}, {1812.0, 5.0},
            {1813.0, 12.2}, {1814.0, 13.9},
            {1815.0, 35.4}, {1816.0, 45.8},
            {1817.0, 41.1}, {1818.0, 30.4},
            {1819.0, 23.9}, {1820.0, 15.7},
            {1821.0, 6.6}, {1822.0, 4.0},
            {1823.0, 1.8}, {1824.0, 8.5},
            {1825.0, 16.6}, {1826.0, 36.3},
            {1827.0, 49.7}, {1828.0, 62.5},
            {1829.0, 67.0}, {1830.0, 71.0},
            {1831.0, 47.8}, {1832.0, 27.5},
            {1833.0, 8.5}, {1834.0, 13.2},
            {1835.0, 56.9}, {1836.0, 121.5},
            {1837.0, 138.3}, {1838.0, 103.2},
            {1839.0, 85.8}, {1840.0, 63.2},
            {1841.0, 36.8}, {1842.0, 24.2},
            {1843.0, 10.7}, {1844.0, 15.0},
            {1845.0, 40.1}, {1846.0, 61.5},
            {1847.0, 98.5}, {1848.0, 124.3},
            {1849.0, 95.9}, {1850.0, 66.5},
            {1851.0, 64.5}, {1852.0, 54.2},
            {1853.0, 39.0}, {1854.0, 20.6},
            {1855.0, 6.7}, {1856.0, 4.3},
            {1857.0, 22.8}, {1858.0, 54.8},
            {1859.0, 93.8}, {1860.0, 95.7},
            {1861.0, 77.2}, {1862.0, 59.1},
            {1863.0, 44.0}, {1864.0, 47.0},
            {1865.0, 30.5}, {1866.0, 16.3},
            {1867.0, 7.3}, {1868.0, 37.3},
            {1869.0, 73.9}, {1870.0, 139.1},
            {1871.0, 111.2}, {1872.0, 101.7},
            {1873.0, 66.3}, {1874.0, 44.7},
            {1875.0, 17.1}, {1876.0, 11.3},
            {1877.0, 12.3}, {1878.0, 3.4},
            {1879.0, 6.0}, {1880.0, 32.3},
            {1881.0, 54.3}, {1882.0, 59.7},
            {1883.0, 63.7}, {1884.0, 63.5},
            {1885.0, 52.2}, {1886.0, 25.4},
            {1887.0, 13.1}, {1888.0, 6.8},
            {1889.0, 6.3}, {1890.0, 7.1},
            {1891.0, 35.6}, {1892.0, 73.0},
            {1893.0, 84.9}, {1894.0, 78.0},
            {1895.0, 64.0}, {1896.0, 41.8},
            {1897.0, 26.2}, {1898.0, 26.7},
            {1899.0, 12.1}, {1900.0, 9.5},
            {1901.0, 2.7}, {1902.0, 5.0},
            {1903.0, 24.4}, {1904.0, 42.0},
            {1905.0, 63.5}, {1906.0, 53.8},
            {1907.0, 62.0}, {1908.0, 48.5},
            {1909.0, 43.9}, {1910.0, 18.6},
            {1911.0, 5.7}, {1912.0, 3.6},
            {1913.0, 1.4}, {1914.0, 9.60},
            {1915.0, 47.4}, {1916.0, 57.10},
            {1917.0, 103.9}, {1918.0, 80.6},
            {1919.0, 63.6}, {1920.0, 37.6},
            {1921.0, 26.1}, {1922.0, 14.2},
            {1923.0, 5.8}, {1924.0, 16.7}
        };
        int nSamp = 5;

        RandomSamples rs = new RandomSamples();
        Random r = new Random(123457L);
        r.setMultiplier(16807);
        rs.setRandomObject(r);
        double[][] samples = rs.getSamples(x, nSamp);
        int[] idx = rs.getIndices();

        PrintMatrix pm = new PrintMatrix("Random Samples");
        PrintMatrixFormat mf = new PrintMatrixFormat();
        mf.setNumberFormat(new java.text.DecimalFormat("0"));
        mf.setNoColumnLabels();
        pm.print(mf, samples);
        pm = new PrintMatrix("Sampled Indices");
        pm.print(mf, idx);
    }
}

Output

Random Samples
              
0  1764   36  
1  1828   62  
2  1923    6  
3  1773   35  
4  1769  106  

Sampled Indices
        
0   15  
1   79  
2  174  
3   24  
4   20  

Link to Java source.