R で NLS モデルを実行しています。残差は正規分布しますが、残差の平均はゼロではありません。どのようにしてこれが可能になるのでしょうか?
x <- data.frame( height= c(185, 194,166, 187, 181,177),
weight=c(77,67,79,87,65,64),
age=c(76,89,76,43,56,54))
model <- nls(height ~ a*weight + age*c, data=x, start= list(a=0, c=0))
residuals <- x$height - predict(model,x)
sum(residuals)
コードとデータを確認する必要があります。試したコードと dput(head(df, 30)) の出力を使用して質問を編集してください。残差の平均はゼロからどれくらい離れていますか?
– ルイ・バラダス
2020 年 9 月 3 日 9:41
resid(model) は残差を与えます。
– G.グロタンディーク
2020 年 9 月 3 日 19:33
------------------------
それは切片です...代数を適切に機能させるには切片が必要だと思います...
2
なぜ NLS を使用するのですか?あなたのモデルは現在 lm(身長 ~ 体重 + 年齢 + 0、データ = x) と同じです。0 には切片が含まれます。
– アラン・キャメロン
2020 年 9 月 3 日 10:27
これは例です。私のモデルでは、いくつかの推定器を制御する必要があります...(完全に意味のない結果が得られます)
– ソーレン・クリステンセン
2020 年 9 月 3 日 10:30