Link to dataset`predict.nls`戻り、指定` newdata`
定義されたパラメータで、予測ではなく、値をフィット:
nls.full <- nls(M ~ (m^(alpha0 + alpha1 * s + alpha2 * v + alpha3 * s * v)) *
(beta0 + beta1 * s + beta2 * v + beta3 * sv +
a * gamma0 + gamma1 * as + gamma2 * av + gamma3 * asv),
trace=TRUE,
start=list(alpha0=2/3, alpha1=0, alpha2=0, alpha3=0,
beta0=est[1], beta1=est[2], beta2=est[3],beta3=est[4],
gamma0=est[5],gamma1=est[6],gamma2=est[7],gamma3=est[8]))
:
M <- maximum.oxygen.uptake m <- mass a <- age s <- sex v <- as.numeric(vigorous.exercise>0) sv <- s*v asv <- a*s*v as <- a*s av <- a*v lnm=log(m) lnms <- log(m)*s lnmv <- log(m)*v lnmsv <- log(m)*s*v y <- M/m^(2/3)
は、私が正常に使用してnls
モデルを当てはめます問題:予測できない
xpredict <- seq(10,120,length.out=300)
data1 <- data.frame(a=35,s=0,v=1,m=seq(10,120,length.out=300))
ypredict <- predict(nls.full, newdata=data1, type="response")
plot(log(maximum.oxygen.uptake) ~ log(mass), subset = (s=='0' & v=='1'))
lines(xpredict,ypredict)
yとxの長さが異なります。
私は300変数を使って新しいデータフレームを定義しましたが、y
予測では300個の結果しか得られません。