scipy.interpolate.splrep возвращает значения NaN, хотя все в порядке - PullRequest
0 голосов
/ 24 марта 2020

Я пытаюсь подогнать кривую к набору данных, содержащих недостающие данные, используя scipy.interpolate splrep и splev. Тем не менее, я в конечном итоге с массивом NaN. У других людей была эта проблема, но проблема заключалась в том, что в их данных были либо дублирующие значения X, не увеличивающиеся значения X, либо NaN. Итак, я проверил оба, но все же он возвращает значения NaN ...

from scipy.interpolate import splrep, splev
import numpy as np

T = np.arange(0, 1000, 0.05)
t = T[data != np.nan]
data = data[data != np.nan] #to check for nan values

spl = splrep(t, data)
fit = splev(T, spl)

print(fit)

И это выводит печально известный массив значений Nan ... Я также пытался вырезать данные с помощью t = T [::10] etc... потому что один ответ StackOverFlow предположил, что слишком узкие x-данные могут привести к этой же проблеме, но я все еще получаю массив nans.

Есть ли что-то, что я делаю, что явно неправильно?

Мои данные

My data

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