R中的函数用于三边测量

时间:2015-09-21 02:20:50

标签: r nls trilateration

这与Trilateration for n points的问题类似,并且由于没有答案,询问者发布了答案。

parent post开始,代码显示为Mathematica,输出中有两个变量(X,Y)。

我在使用nls函数在R中创建相同的函数时遇到了困难。

我尝试了以下内容:

data <- data.frame( signal = c(98,94,66,49),x=c(6,5,4,4),y=c(6,7,7,6))   

weighted_distance <- function(signal, y, x)
{
   return(y - (signal^-1)*10*x)         
}

NLS_x <- nls(y ~ weighted_distance(signal,y,x), data = data,start = list(x=2,y=1))

我收到以下错误:

Error in numericDeriv(form[[3L]], names(ind), env) : 
'Missing value or an infinity produced when evaluating the model'

我理解代码中写的公式是不正确的,因为分母直接作为信号而不是乘以表示距离的常数。

但我不明白如何处理这个问题,并以更简单的方式表示R中的加权非线性平方估计。

0 个答案:

没有答案