Beispiel #1
0
def _erpacSuro(xp, xa, npts, ntrials):
    """Parallel surrogates
    """
    # Permute ntrials (only for amplitude):
    perm = np.random.permutation(ntrials)
    for t in range(npts):
        suro = circ_corrcc(xp[t, :], xa[t, perm])[0]
    return suro
Beispiel #2
0
def _erpacSuro(xp, xa, npts, ntrials):
    """Parallel surrogates
    """
    # Permute ntrials (only for amplitude):
    perm = np.random.permutation(ntrials)
    for t in range(npts):
        suro = circ_corrcc(xp[t, :], xa[t, perm])[0]
    return suro
Beispiel #3
0
def _erpac(xp, xa, n_perm, n_jobs):
    """Sub erpac function
    [xp] = [xa] = (npts, ntrials)
    """
    npts, ntrials = xp.shape
    # Compute ERPAC
    xerpac = np.zeros((npts, ))
    for t in range(npts):
        xerpac[t] = circ_corrcc(xp[t, :], xa[t, :])[0]

    # Compute surrogates:
    data = Parallel(n_jobs=n_jobs)(delayed(_erpacSuro)(xp, xa, npts, ntrials)
                                   for pe in range(n_perm))
    suro = np.array(data)

    # Normalize erpac:
    xerpac = (xerpac - suro.mean(0)) / suro.std(0)

    # Get p-value:
    pvalue = norm.cdf(-np.abs(xerpac)) * 2

    return xerpac, pvalue
Beispiel #4
0
def _erpac(xp, xa, n_perm, n_jobs):
    """Sub erpac function
    [xp] = [xa] = (npts, ntrials)
    """
    npts, ntrials = xp.shape
    # Compute ERPAC
    xerpac = np.zeros((npts,))
    for t in range(npts):
        xerpac[t] = circ_corrcc(xp[t, :], xa[t, :])[0]

    # Compute surrogates:
    data = Parallel(n_jobs=n_jobs)(delayed(_erpacSuro)(
            xp, xa, npts, ntrials) for pe in range(n_perm))
    suro = np.array(data)

    # Normalize erpac:
    xerpac = (xerpac - suro.mean(0))/suro.std(0)

    # Get p-value:
    pvalue = norm.cdf(-np.abs(xerpac))*2

    return xerpac, pvalue