Я обычно используют одну из двух стратегий здесь, я беру журнал и установить линейную модель или я использую nls
. Я думаю, что вы могли бы выяснить зарегистрированную модель, если хотите, поэтому Ill покажет метод nls
.
nls1=nls(ygm~i*x^-z,start=list(i=-3,z=-2),data=dat)
Двойная проверка - это формула, которую вы хотите, этот метод принимает довольно широкий класс формул. Проведите некоторое время, обманывая начальные значения. В частности, попробуйте подумать о границах, где поверхность правдоподобия может сделать странные вещи. Попробуйте значения по обе стороны от wierd, чтобы вы могли быть уверены, что вы не находитесь в локальном оптимуме.
> nls1
Nonlinear regression model
model: ygm ~ i * x^-z
data: dat
i z
245.0356 0.5449
residual sum-of-squares: 811.4
...
> predict(nls1)
[1] 245.03564 167.95574 134.66070 115.12256 101.94200 92.30101 84.86458
[8] 78.90891
> plot(dat)
> lines(predict(nls1))
Спасибо за решение. Я не нашел много документации по nls, причем большинство вещей указывало на igraph, который работает неправильно. Сейчас я получаю именно то, что мне нужно. Спасибо! – joe