1
얼마 전 Jayden이 회귀 방정식을 플롯에 추가하는 것을 보았습니다. 매우 유용하다고 생각했습니다. 하지만 R^2을 표시하지 않기 때문에 나는이에 코드를 조금 변경 :ggplot in R : 회귀 방정식을 플롯에 추가
lm_eqn = function(m) {
l <- list(a = format(coef(m)[1], digits = 2),
b = format(abs(coef(m)[2]), digits = 2));
if (coef(m)[2] >= 0) {
eq <- substitute(italic(y) == a + b %.% italic(x))
} else {
eq <- substitute(italic(y) == a - b %.% italic(x))
}
as.character(as.expression(eq));
}
이 플롯에 "A + BX"또는 "A-BX를"플롯에 나섰고없이 a와 b를 대체하는 실제 계수. 누구든지 문제를 해결하는 방법을 알고 있습니까? 매우 감사합니다!
재이든의 대답은 : 당신이 substitute()
에서 l
누락처럼
lm_eqn = function(m) {
l <- list(a = format(coef(m)[1], digits = 2),
b = format(abs(coef(m)[2]), digits = 2),
r2 = format(summary(m)$r.squared, digits = 3));
if (coef(m)[2] >= 0) {
eq <- substitute(italic(y) == a + b %.% italic(x)*","~~italic(r)^2~"="~r2,l)
} else {
eq <- substitute(italic(y) == a - b %.% italic(x)*","~~italic(r)^2~"="~r2,l)
}
as.character(as.expression(eq));
}
감사합니다. 1을 추가했지만 다음과 같은 오류 메시지가 나타납니다. 대체 오류 (기울임 꼴 (y) == a - b %. 기울임 꼴 (x), 1) : 잘못된 환경이 지정되었습니다. 이 문제를 어떻게 해결할 수 있습니까? – Bearbear
@Bearbear,'substitute()'는리스트의 이름을 두번째 인자로 찾는다. '1'이 아니라'l'이라고 부르지 않았습니까? –
W, 숫자 "1"로 "l"을 쓰면서 실수를했습니다. 이제 작동합니다, 정말 고마워요. – Bearbear