Я 2 дня борюсь за множественную регрессию. Вот что у меня есть в данный момент:
y<- c(-0.3902, 0.5277, 0.4357, -0.1888, -6.7422, 0.3797, -0.5141, NA, -1.2423, 5.6756, -0.5352,
-0.2379, NA, 0.4270, NA, NA, NA, NA, NA, NA, -1.1185, 0.0594,
0.8280, NA, 1.8387, -3.1469,-1.6212, -0.8400, NA , NA, NA, -0.7291, 2.0888)
x<- c( 0.07712829, 0.07038519, 0.08875312, 0.08235028, 0.10874493, 0.09713412, 0.11821937, 0.12796526,
0.12159038, 0.08520884, 0.07046089, 0.07417249, 0.07507544, 0.11416440, 0.09955467, 0.06688244,
0.06871298, 0.06187514, 0.12293434, 0.07864503, 0.12417404, 0.08600490, 0.10745128, 0.12277381,
0.12952106, 0.09144677, 0.09034708, 0.08039892, 0.07856194, 0.07864304, 0.10883127, 0.10690687,
0.11617899)
f1<- y ~ ((a*b)/(a+b)+x)
st1 <- expand.grid(a = seq(0, 1000, len = 10),
b = seq(0, 800, len = 10))
o<-nls2(f1,
start = st1,
algorithm = "brute-force")
И результат
Ошибка в numericDeriv (форма [[3L]], имена (ind), env): отсутствует значение или бесконечность, полученные при оценке модели Ошибка в результате [[which.min (ss)]]: попытка выбрать менее одного элемента в get1index
Я пытался с
st2<- data.frame(a = c(0,1000), b = c(0, 800))
o<-nls2(f1,
start = st2,
algorithm = "brute-force")```
получение
Ошибка в результате [[which.min (ss)]]: попытка выделить менее одного элемента в get1index
У меня нет Идея, что значение может быть, что также затрудняет дать начальное значение. Я должен применить уравнение к нескольким наборам данных (здесь я просто приведу, например, меньший).
Какие-нибудь советы о том, как это сделать? Возможно, использовать другой пакет для множественной регрессии вместо nls2?
Любая помощь будет высоко ценится!