повысить ValueError ("массивы x и y должны быть равны по длине вдоль" ValueError: массивы x и y должны быть равны по длине вдоль оси интерполяции - PullRequest
0 голосов
/ 02 марта 2019

Я работаю над программой для измерения ВСР (вариабельности сердечного ритма), но получаю ошибку, как показано ниже.

from scipy.interpolate import interp1d

meaures = [peaklist]

print('this peaklist is for measuring of frequency domain maesures', peaklist)

RR_x = peaklist[1:]

print('RR_X IS : ', RR_x)

RR_y = RR_interval_list

print('RR_Y IS : ', RR_y)

RR_x_new = np.linspace(RR_x[0], RR_x[-1],RR_x[-1])

print("RR_X_NEW IS : ", RR_x_new)

f = interp1d(RR_x_new, RR_y, kind='cubic')

print('f is : ',f(250))

этот пиковый список предназначен для измерения состояний частотной области

[63, 165, 264, 360, 460, 565, 674, 773, 863, 953, 1048, 1156, 1272, 1385, 1487, 1592, 1698, 1803, 1897, 1994, 2097, 2206, 2308, 2406]

RR_X IS:

[165, 264, 360, 460, 565, 674, 773, 863, 953, 1048, 1156, 1272, 1385, 1487, 1592, 1698, 1803, 1897, 1994, 2097, 2206, 2308, 2406]

RR_Y IS:

[1020.0, 990.0, 960.0, 1000.0, 1050.0, 1090.0, 990.0, 900.0, 900.0, 950.0, 1080.0, 1160.0, 1130.0, 1020.0, 1050.0, 1060.0, 1050.0, 940.0, 970.0, 1030.0, 1090.0, 1020.0, 980.0]

RR_X_NEW IS:

[ 165.          165.93180873  166.86361746 ... 2404.13638254 2405.06819127
 2406.        ]

Трассировка (последний последний вызов): файл "C: /Users/Dee1/PycharmProjects/HeartAna1.1/HeartAna.py", строка 235, в f =interp1d (RR_x_new, RR_y, kind = 'cubic') Файл "C: \ ProgramData \ Anaconda3 \ envs \ HeartAna1.1 \ lib \ site-packages \ scipy \ interpolate \ interpolate.py", строка 433, в init _Interpolator1D. init (self, x, y, axis = axis) Файл "C: \ ProgramData \ Anaconda3 \ envs \ HeartAna1.1 \ lib \ site-packages \ scipy \ interpolate \ polyint.py ", строка 60, в init self._set_yi (yi, xi = xi, axis = axis) Файл" C: \ ProgramData \ Anaconda3 \ envs \ HeartAna1.1 \ lib \ site-packages \ scipy\ interpolate \ polyint.py ", строка 125, в _set_yi поднимают ValueError (" массивы x и y должны быть равны по длине вдоль "ValueError: массивы x и y должны быть равны по длине вдоль оси интерполяции.

Процесс завершен скод выхода 1

...