Уведомления

Группа в Telegram: @pythonsu

#1 Март 16, 2020 14:57:50

Godseffiana
От: Россия
Зарегистрирован: 2019-11-28
Сообщения: 3
Репутация: +  0  -
Профиль   Адрес электронной почты  

Нужно найти коэфицент корреляции при котором функции будут максимально совпадать.

У меня два массива данных. Мне нужно найти коэффициент корреляции, такой чтобы данные функции максимально совпадали, то есть измеренный график был максимально подобен модельному. Я использовала curve_fit, но не уверенна, что работает правильно. Мне выдало крохотный коэффициент и два совершенно разных графика. Если умножить искусственно, то они подобны.

 dis = np.loadtxt('mean_ones.txt')
k = 0
x_dis = []
y_dis = []
x_dis_cut = []
y_dis_cut = []
for i in range(len(dis)):
    x_dis.append(dis[i][0])
    y_dis.append(dis[i][1])
    
for k in range(len(dis)):
    if x_dis[k] >= 3980 and x_dis[k] <= 4080:
        x_dis_cut.append(x_dis[k])
        y_dis_cut.append(y_dis[k])
model = np.loadtxt('pfsolspec_hr.cnv')
x_model = []
y_model = []
for i in range(len(model)):
    x_model.append(model[i][0])
    y_model.append(model[i][1])
interpol = interp1d(x_dis_cut, y_dis_cut, kind = "cubic")
plt.plot(x_dis_cut, 3010 * interpol(x_dis_cut), x_model, y_model)
def fittable(interpol, A):
    return A * interpol
param, param_1 = curve_fit(fittable, x_model, y_model)
plt.plot(x_dis_cut, param * interpol(x_dis_cut), x_model, y_model)
param

Отредактировано Godseffiana (Март 16, 2020 14:58:40)

Офлайн

#2 Март 16, 2020 20:49:52

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Нужно найти коэфицент корреляции при котором функции будут максимально совпадать.

Godseffiana
Мне нужно найти коэффициент корреляции, такой чтобы данные функции максимально совпадали
Если функции даны, то степень их совпадения никак не может измениться.

Godseffiana
Я использовала curve_fit, но не уверенна, что работает правильно.

Вам нужно выяснить какие способы преобразования допустимы. ffit - умножение на число, а вам скорее всего нужны еще сдвиги.



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version