コード例 #1
0
def test_acf_1d(trigonometric, nlags):
    _acf = timeseries.acf(trigonometric.sin, nlags=nlags)
    # calculate default nlags
    if nlags is None:
        nlags = int(0.1 * (len(trigonometric.t) / 2 - 1))

    assert len(_acf) == nlags
    assert_almost_equal(_acf[0], 1)
    assert_almost_equal(trigonometric.cos[:nlags], _acf, decimal=1)
コード例 #2
0
def test_acf_col_var(trigonometric):
    nlags = 100
    sin = np.vstack((trigonometric.sin for _ in range(5)))
    _acf = timeseries.acf(sin.T, row_var=False, nlags=nlags)

    cos = np.vstack((trigonometric.cos[:nlags] for _ in range(5)))

    assert_equal(_acf.shape, (nlags, 5))
    assert_almost_equal(_acf[0, :], np.ones(5))
    assert_almost_equal(cos, _acf.T, decimal=1)
コード例 #3
0
def test_acf_2d(trigonometric, nlags):
    sin = np.vstack((trigonometric.sin for _ in range(5)))
    _acf = timeseries.acf(sin, row_var=True, nlags=nlags)

    # calculate default nlags
    if nlags is None:
        nlags = int(0.1 * (len(trigonometric.t) / 2 - 1))

    cos = np.vstack((trigonometric.cos[:nlags] for _ in range(5)))

    assert_equal(_acf.shape, (5, nlags))
    assert_almost_equal(_acf[:, 0], np.ones(5))
    assert_almost_equal(cos, _acf, decimal=1)
コード例 #4
0
def test_acf_DataFrame(trigonometric, nlags):
    sin = pd.DataFrame(np.vstack((trigonometric.sin for _ in range(5))).T)
    _acf = timeseries.acf(sin, nlags=nlags)

    # calculate default nlags
    if nlags is None:
        nlags = int(0.1 * (len(trigonometric.t) / 2 - 1))

    cos = np.vstack((trigonometric.cos[:nlags] for _ in range(5))).T

    assert_equal(_acf.shape, (nlags, 5))
    assert_almost_equal(_acf.iloc[0], np.ones(5))
    assert_almost_equal(cos, _acf.values, decimal=1)
コード例 #5
0
def test_nlags(trigonometric):
    acf = timeseries.acf(trigonometric.sin, 10)
    assert len(acf) == 10
コード例 #6
0
def test_demean(trigonometric):
    acf = timeseries.acf(trigonometric.sin + 10, 10, demean=False, norm=False)
    acf2 = timeseries.acf(trigonometric.sin, 10, norm=False)
    assert_almost_equal(acf - 10**2, acf2)
コード例 #7
0
def test_norm(trigonometric):
    acf = timeseries.acf(trigonometric.sin, 10, norm=True)
    assert acf[0] == 1.0

    acf = timeseries.acf(trigonometric.sin, 10, norm=False)
    assert_almost_equal(acf[0], 0.49995)