Hơn 2 biến giải thích

Hồi quy trung cấp với R

Richie Cotton

Data Evangelist at DataCamp

Từ bài trước

ggplot(
  fish,
  aes(length_cm, height_cm, color = mass_g)
) +
  geom_point() +
  scale_color_viridis_c(option = "inferno")

Biểu đồ phân tán màu: chiều dài–chiều cao–khối lượng (inferno).

Hồi quy trung cấp với R

Phân ô theo loài

ggplot(
  fish,
  aes(length_cm, height_cm, color = mass_g)
) +
  geom_point() +
  scale_color_viridis_c(option = "inferno") +
  facet_wrap(vars(species))

Biểu đồ phân tán theo loài: chiều dài–chiều cao–khối lượng.

Hồi quy trung cấp với R

Các mức độ tương tác

Không có tương tác

lm(mass_g ~ length_cm + height_cm + species + 0, data = fish)

Tương tác 2 chiều giữa các cặp biến

lm(
  mass_g ~ length_cm + height_cm + species + length_cm:height_cm + length_cm:species + height_cm:species + 0, 
  data = fish
)

Tương tác 3 chiều giữa cả ba biến

lm(
  mass_g ~ length_cm + height_cm + species + length_cm:height_cm + length_cm:species + height_cm:species + length_cm:height_cm:species + 0, 
  data = fish
)
Hồi quy trung cấp với R

Tất cả các tương tác

lm(
  mass_g ~ length_cm + height_cm + species + length_cm:height_cm + length_cm:species + height_cm:species + length_cm:height_cm:species + 0, 
  data = fish
)
lm(
  mass_g ~ length_cm * height_cm * species + 0, 
  data = fish
)
Hồi quy trung cấp với R

Chỉ tương tác 2 chiều

lm(
  mass_g ~ length_cm + height_cm + species + length_cm:height_cm + length_cm:species + height_cm:species + 0, 
  data = fish
)
lm(
  mass_g ~ (length_cm + height_cm + species) ^ 2 + 0, 
  data = fish
)
lm(
  mass_g ~ I(length_cm) ^ 2 + height_cm + species + 0, 
  data = fish
)
1 Để bình phương các biến giải thích, xem "Introduction to Regression in R", Chương 2, "Transforming variables"
Hồi quy trung cấp với R

Luồng dự đoán

mdl_mass_vs_all <- lm(mass_g ~ length_cm * height_cm * species * 0, data = fish)

explanatory_data <- expand_grid(
  length_cm = seq(5, 60, 6),
  height_cm = seq(2, 20, 2),
  species = unique(fish$species)
)

prediction_data <- explanatory_data %>% 
  mutate(mass_g = predict(mdl_mass_vs_all, explanatory_data))
Hồi quy trung cấp với R

Trực quan hóa dự đoán

ggplot(
  fish,
  aes(length_cm, height_cm, color = mass_g)
) +
  geom_point() +
  scale_color_viridis_c(option = "inferno") +
  facet_wrap(vars(species)) +
  geom_point(
    data = prediction_data, 
    size = 3, shape = 15
  )

Biểu đồ phân tán chiều dài–chiều cao–khối lượng theo loài (dự đoán).

Hồi quy trung cấp với R

Ayo berlatih!

Hồi quy trung cấp với R

Preparing Video For Download...