我有一组双变量时间序列,并希望将它们重新取样到相同的长度。我认为使用所有时间序列的平均长度可能是一个好主意,因为我想避免某些系列会缩短或扩展太多。我的第一个天真的想法是使用信号包的重采样方法,并分别重新采样系列的每个维度。我不太喜欢这个想法,因为我担心维度之间的对齐可能会受到独立重新采样的影响,但我希望这种影响可以忽略不计。
我当前的问题是重新采样数据会在系列的结尾和开头创建工件。看起来重采样方法假定系列从零开始。现在我想知道是否有更合适的重采样方法,在最好的情况下可以随时使用(在R中),也可能支持双变量时间序列。
简介: http://i.stack.imgur.com/3OwAt.png
代码示例:
example <- c(-2014.1, -2014.1, -2014.1, -2014, -2014, -2013.9, -2013.9,
-2013.7, -2013.5, -2013.4, -2013.1, -2012.9, -2012.6, -2012.4,
-2012, -2011.7, -2011.4, -2011, -2010.5, -2010.1, -2009.5, -2009.1,
-2008.6, -2008, -2007.5, -2006.9, -2006.4, -2005.7, -2005.1,
-2004.4, -2003.7, -2003, -2002.4, -2001.5, -2000.7, -1999.9,
-1999.1, -1998.2, -1997.4, -1996.5, -1995.6, -1994.6, -1993.6,
-1992.6, -1991.7, -1990.7, -1989.7, -1988.9, -1987.9, -1986.9,
-1985.9, -1984.9, -1984, -1983, -1982.1, -1981.1, -1980.1, -1979.2,
-1978.2, -1977.2, -1976.4, -1975.4, -1974.4, -1973.4, -1972.4,
-1971.5, -1970.5, -1969.6, -1968.6, -1967.6, -1966.6, -1965.7,
-1964.7, -1963.9, -1962.9, -1961.9, -1960.9, -1959.9, -1958.9,
-1957.9, -1956.9, -1955.9, -1955, -1954, -1953, -1952.1, -1951.5,
-1951.1, -1950.6, -1950.1, -1949.6, -1949.2, -1948.7, -1948.2,
-1947.9, -1947.4, -1946.9, -1946.4, -1945.9, -1945.4, -1944.9,
-1944.4, -1943.9, -1943.4, -1943, -1942.5, -1942, -1941.5, -1941,
-1940.6, -1940.1, -1939.6, -1939.1, -1938.7, -1938.2, -1937.7,
-1937.2, -1936.7, -1936.2, -1935.7, -1935.4, -1934.9, -1934.4,
-1933.9, -1933.4, -1932.9, -1932.4, -1931.9, -1931.4, -1931,
-1930.5, -1930, -1929.5, -1929, -1928.6, -1928.1, -1927.6, -1927.1,
-1926.6, -1926.2, -1925.7, -1925.2, -1924.7, -1924.4, -1923.9,
-1923.4, -1922.9, -1922.4, -1921.9, -1921.4, -1920.9, -1920.4,
-1919.9, -1919.4, -1919, -1918.5, -1918, -1917.5, -1917, -1916.6,
-1916.1, -1915.6, -1915.1, -1914.6, -1914.2, -1913.7, -1913.2,
-1912.7, -1912.2, -1911.7, -1911.4, -1910.9, -1910.4, -1909.9,
-1909.4, -1908.9, -1908.4, -1907.9, -1907.5, -1906.9, -1906.5,
-1906, -1905.5, -1905, -1904.6, -1904, -1903.6, -1903.1, -1902.7,
-1902.2, -1901.7, -1901.2, -1900.7, -1900.4, -1899.9, -1899.4,
-1898.9, -1898.4, -1897.9, -1897.4, -1896.9, -1896.4, -1895.9,
-1895.2, -1895, -1894.5, -1894, -1893.6, -1893.1, -1892.6, -1892.1,
-1891.6, -1891.2, -1890.7, -1890.2, -1889.7, -1889.2, -1888.9,
-1888.4, -1887.9, -1887.4, -1886.9, -1886.4, -1885.6, -1885.4,
-1884.9, -1884.5, -1884, -1883.5, -1883, -1882.5, -1882.1, -1881.6,
-1881.1, -1880.6, -1880.2, -1879.7, -1879.2, -1878.7, -1878.4,
-1877.9, -1877.4, -1876.9, -1876.1, -1875.6, -1875.1, -1874.6,
-1874.1, -1873.6, -1873.2, -1872.7, -1872.2, -1871.7, -1871.4,
-1870.7, -1870.4, -1869.9, -1869.4, -1868.9, -1868.4, -1867.9,
-1867.4, -1867.2, -1866.4, -1866, -1865.5, -1865, -1864.5, -1864.1,
-1863.6, -1863.1, -1862.6, -1862.1, -1861.7, -1861.2, -1860.7,
-1860.2, -1859.7, -1859.4, -1858.9, -1858.4, -1857.9, -1857.4,
-1856.9, -1856.4, -1855.9, -1855.4, -1854.9, -1854.5, -1854,
-1853.5, -1853.1, -1852.6, -1852.1, -1851.6, -1851.1, -1850.7,
-1850.2, -1849.7, -1849.2)
plot(example, t="l", main="Original")
plot(resample(example,250,length(example)), t="l", main="Resampled")