0
lm
또는 glm
유형의 객체 또는 lmer
유형의 객체의 경우 R 함수 hatvalues()
을 사용하여 모델에서 해트 값을 추출 할 수 있습니다. 그러나 이것은 분명히 nls
개체에서는 작동하지 않습니다. 나는 모든 방법으로 봤지만,이 값을 얻을 수있는 방법을 찾을 수 없습니다. nls
은 단순히 모자 행렬을 만들지 않습니까, 아니면 어떻게 든 비현실적 인 최소 제곱 모형에서 생성 된 모자 값입니까?R에서 모자/투영/영향 행렬 또는`nls` 모델 객체의 값을 어떻게 추출하나요?
재현 예 :
xs = rep(1:10, times = 10)
ys = 3 + 2*exp(-0.5*xs)
for (i in 1:100) {
xs[i] = rnorm(1, xs[i], 2)
}
df1 = data.frame(xs, ys)
nls1 = nls(ys ~ a + b*exp(d*xs), data=df1, start=c(a=3, b=2, d=-0.5))
안녕하세요 @ lmo,이 예제를 이제 기본 R 인 'nls'에 맞게 수정했습니다. 죄송합니다. – Bajcz
최종 답변과는 거리가 먼이 [wikipedia post] (https://en.wikipedia.org/wiki/Projection_matrix)는 모자 행렬 구성에 도움이되는 평가 도구로 비선형 최소 제곱을 언급하지 않습니다. 나는 이것이'nls' 객체에 대한'hatvalues' 메소드의 부재와 함께이 계산이 적절한 방법이 아니거나 nls를 추정 할 수 없다는 것을 의미한다고 생각합니다. [crossValidated] (http://stats.stackexchange.com/)이 경로를 따라 나아가는 데 더 적합 할 것입니다. – lmo
의견을 주셔서 감사합니다 - 중재자가 그렇게 할 수 있다고 생각한다면이 질문을 crossValidated로 마이그레이션하는 것이 좋습니다. (직접 할 수 있다고 생각하지 않습니까?) – Bajcz