Как рассчитать согласованность и мнимую согласованность в питоне? - PullRequest
0 голосов
/ 02 ноября 2019

Высокий, я сейчас пишу магистерскую диссертацию о подверженности гипнозу. Я сравниваю сигналы ЯИЦ у людей с низкой и высокой восприимчивостью.

Я хочу вычислить мнимую когерентность, заданную следующим образом:

Icoh = IM (Pxy) / sqrt (Pxx * Pyy)

Я обнаружил, что могу рассчитать когерентностькак функция scipy.signal.coherence со следующим кодом:

sfarrA, Pxx = scipy.signal.welch(ex_sig1[0], fs=128)
sfarrB, Pyy = scipy.signal.welch(ex_sig1[9], fs=128)
sfarrAB, Pxy = scipy.signal.csd(ex_sig1[0],ex_sig1[9],fs=128) ```

coherence = abs(Pxy)**2/(Pxx*Pyy)

Далее я пытаюсь вычислить мнимую когерентность, используя следующий код:

Icoh = np.imag(Pxy)/np.sqrt(Pxx*Pyy)

К сожалению, я получаю отрицательные значения в моемвыходной, которого я бы не ожидал здесь.

array([ 0.        ,  0.15618352,  0.09958203,  0.00483643,  0.02767622,
        0.07590722,  0.06308123,  0.05571067,  0.0312004 , -0.06364436,
       -0.15178242, -0.0313257 ,  0.01023862, -0.02718701, -0.03659143,
        0.04386298, -0.05511231, -0.05728281, -0.03789811, -0.07106073,
       -0.34574961, -0.27614587, -0.27608529, -0.37483751, -0.34951999,

Любая помощь будет принята с благодарностью.

Большое спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...