我需要进行线性回归,以计算一个经验参数。L1 是一种栅格图像,格式为 .tif。同时,L2 也是一种栅格图像,在先前已经计算过了。这两个图像具有相同的列数和行数。
公式如下: L1 = a + b * L2, 在 R 中表示为:
在后面的公式中,我需要用到 a 和 b。
我现在遇到的问题是,这两个栅格都包含 NA 值,我不确定如何构建线性回归函数。我对 R 并不是那么熟悉,所以我被卡住了,而这个问题可能相当简单。我想我需要使用 calc,但不确定怎么做。 编辑:到目前为止,我有这段代码:
然而,计算时间非常长,且没有得出结果。
公式如下: L1 = a + b * L2, 在 R 中表示为:
lm(L1 ~ L2)
在后面的公式中,我需要用到 a 和 b。
我现在遇到的问题是,这两个栅格都包含 NA 值,我不确定如何构建线性回归函数。我对 R 并不是那么熟悉,所以我被卡住了,而这个问题可能相当简单。我想我需要使用 calc,但不确定怎么做。 编辑:到目前为止,我有这段代码:
s = stack(L1,L2)
fun = function(x) {if (is.na(x[1])) { NA } else {lm(x[1] ~ x[2])$coefficients[2]}}
然而,计算时间非常长,且没有得出结果。
v
进行子集操作。例如:v <- v[v$L2 > 0.0, ]
- Robert Hijmans