Я пытаюсь соответствовать многомерной модели нелинейной регрессии - PullRequest
0 голосов
/ 29 июня 2019

Я хочу попросить вашей помощи смоделировать многомерную нелицензионную модель вида: y = b1 * x1 ^ b2 + b3 * x2 + b4 * x3.Ранее я использовал следующую форму для одной независимой переменной нелинейной модели.Но теперь с массивом X с несколькими независимыми переменными я не знаю, как продолжить.

def expon(x, Beta_1, Beta_2):
     y = Beta_1*np.exp(Beta_2*x)
     return y

from scipy.optimize import curve_fit

popt, pcov = curve_fit(sigmoid, xdata, ydata )
print(" beta_1 = %f, beta_2 = %f" % (popt[0], popt[1]))

1 Ответ

0 голосов
/ 29 июня 2019

Этот вопрос очень похож. В вашем случае упакуйте ваши переменные, передайте их функции и распакуйте внутри функции -

X = (x1, x2, x3)
def expon(X, b1, b2, b3, b4):
    x1, x2, x3 = X
    y = b1 * (x1 ** b2) + b3 * x2 + b4 * x3
    return y
...