Нет, они не должны.Например, рассмотрим группу «Разработано».В нижнем левом случае мы имеем Alcohol ~ Life.expectancy
, что означает, что линия регрессии пытается быть «посередине» возможных значений Alcohol
при изменении Life.expectancy
.В результате мы охватываем только значения в небольшом диапазоне значений Alcohol
, около (5,5, 9).Однако в правом верхнем случае мы имеем Life.expectancy ~ Alcohol
, что означает, что линия регрессии пытается быть «посередине» возможных значений Life.expectancy
при изменении Alcohol
.По определению, в этом случае мы охватываем все значения алкоголя, интервал (0, 15).
В терминах коэффициентов у нас также нет причин получать что-то подобное.Например,
set.seed(2)
y <- rnorm(100)
x <- rnorm(100, sd = 0.2)
coef(lm(y ~ x))
# (Intercept) x
# -0.02879037 -0.32651252
cov(y, x) / var(x)
# [1] -0.3265125
coef(lm(x ~ y))
# (Intercept) y
# 0.005553734 -0.009420632
cov(y, x) / var(y)
# [1] -0.009420632
То есть наклон получается делением ковариации (одинаковой в обоих случаях) на дисперсию независимой переменной с целью сделать масштабтак же.В вашем случае Alcohol
явно имеет шкалу, отличную от Life.expectancy
, отсюда и другие результаты.