Ich evaluiere die Leistung eines numerischen deterministischen Modells, und ich evaluiere seine Vorhersage-Performance gegen beobachtete Daten. Ich machte ein Streudiagramm der beobachteten (Vsurface) vs modellierten (Vmod) Daten, passte ein lm (die rote Linie) und fügte eine 1: 1 Linie hinzu. Ich möchte den Punkt finden, an dem sich diese beiden Linien kreuzen, damit ich dokumentieren kann, wo sich das Modell von übermäßig vorhersagend zu unterschätzt verschiebt. Gibt es einen einfachen Weg, dies zu tun? Hier ist der Code für den lm:Finden Kreuzung von 1: 1-Linie und lm Linie
lm <- lm(Vmod~Vsurface, data = v)
summary(lm)
Call:
lm(formula = Vmod ~ Vsurface, data = v)
Residuals:
Min 1Q Median 3Q Max
-0.63267 -0.11995 -0.03618 0.13816 0.60314
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 0.20666 0.06087 3.395 0.00185 **
Vsurface 0.43721 0.06415 6.816 1.05e-07 ***
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 0.2232 on 32 degrees of freedom
Multiple R-squared: 0.5921, Adjusted R-squared: 0.5794
F-statistic: 46.45 on 1 and 32 DF, p-value: 1.047e-07
Hier ist der Plot-Code:
ggplot(data = v, aes(x = Vsurface, y = Vmod)) +
geom_point(col = "slateblue2") +
geom_smooth(method = "lm", col = "red") +
geom_abline(intercept = 0, slope = 1)
Ich bin in R Abschlag arbeiten.
Gerade diese analytisch lösen. '0.43721 * x + 0.20666 = x' so' x = 0.20666/(1-0.43721) = 0.3672062' – G5W