library(tidymodels)
library(dplyr)
install.packages("parsnip")
library(parsnip)
readr::read_csv("boston.csv")
boston <- readr::read_csv("boston.csv")
sum(is.na(boston))
summary(boston$cmedv)

Part 5

set.seed(123)
boston_split <- initial_split(boston, prop = 0.7, strata = cmedv)
train <- training(boston_split)
test <- testing(boston_split)

Part 6

boston_split 

Part 7

library(ggplot2)
ggplot(mapping = aes(x = cmedv)) +
  geom_histogram(data = train, binwidth = 1, fill = "blue", alpha = 0.5) +
  geom_histogram(data = test, binwidth = 1, fill = "red", alpha = 0.5)

Part 8

lm1 <- linear_reg() %>%
  fit(cmedv ~ rm, data = train)
lm1 %>%
  predict(test) %>%
  bind_cols(test %>% select(cmedv)) %>%
  rmse(truth = cmedv, estimate = .pred)

part 9

lm2 <- linear_reg() %>%
  fit(cmedv ~ ., data = train)
lm2 %>%
  predict(test) %>%
  bind_cols(test %>% select(cmedv)) %>%
  rmse(truth = cmedv, estimate = .pred)

Part 10

knn <- nearest_neighbor() %>%
  set_engine("kknn") %>%
  set_mode("regression") %>%
  fit(cmedv ~ ., data = train)
knn %>%
  predict(test) %>%
  bind_cols(test %>% select(cmedv)) %>%
  rmse(truth = cmedv, estimate = .pred)
LS0tDQp0aXRsZTogIk1vZHVsZSA4IExhYiINCm91dHB1dDogaHRtbF9ub3RlYm9vaw0KLS0tDQoNCmBgYHtyfQ0KbGlicmFyeSh0aWR5bW9kZWxzKQ0KbGlicmFyeShkcGx5cikNCmluc3RhbGwucGFja2FnZXMoInBhcnNuaXAiKQ0KbGlicmFyeShwYXJzbmlwKQ0KcmVhZHI6OnJlYWRfY3N2KCJib3N0b24uY3N2IikNCmJvc3RvbiA8LSByZWFkcjo6cmVhZF9jc3YoImJvc3Rvbi5jc3YiKQ0Kc3VtKGlzLm5hKGJvc3RvbikpDQpzdW1tYXJ5KGJvc3RvbiRjbWVkdikNCmBgYA0KIyBQYXJ0IDUNCg0KYGBge3J9DQpzZXQuc2VlZCgxMjMpDQpib3N0b25fc3BsaXQgPC0gaW5pdGlhbF9zcGxpdChib3N0b24sIHByb3AgPSAwLjcsIHN0cmF0YSA9IGNtZWR2KQ0KdHJhaW4gPC0gdHJhaW5pbmcoYm9zdG9uX3NwbGl0KQ0KdGVzdCA8LSB0ZXN0aW5nKGJvc3Rvbl9zcGxpdCkNCmBgYA0KDQojIFBhcnQgNiANCmBgYHtyfQ0KYm9zdG9uX3NwbGl0IA0KYGBgDQojIFBhcnQgNw0KYGBge3J9DQpsaWJyYXJ5KGdncGxvdDIpDQpnZ3Bsb3QobWFwcGluZyA9IGFlcyh4ID0gY21lZHYpKSArDQogIGdlb21faGlzdG9ncmFtKGRhdGEgPSB0cmFpbiwgYmlud2lkdGggPSAxLCBmaWxsID0gImJsdWUiLCBhbHBoYSA9IDAuNSkgKw0KICBnZW9tX2hpc3RvZ3JhbShkYXRhID0gdGVzdCwgYmlud2lkdGggPSAxLCBmaWxsID0gInJlZCIsIGFscGhhID0gMC41KQ0KYGBgDQojIFBhcnQgOA0KYGBge3J9DQpsbTEgPC0gbGluZWFyX3JlZygpICU+JQ0KICBmaXQoY21lZHYgfiBybSwgZGF0YSA9IHRyYWluKQ0KbG0xICU+JQ0KICBwcmVkaWN0KHRlc3QpICU+JQ0KICBiaW5kX2NvbHModGVzdCAlPiUgc2VsZWN0KGNtZWR2KSkgJT4lDQogIHJtc2UodHJ1dGggPSBjbWVkdiwgZXN0aW1hdGUgPSAucHJlZCkNCmBgYA0KIyBwYXJ0IDkNCmBgYHtyfQ0KbG0yIDwtIGxpbmVhcl9yZWcoKSAlPiUNCiAgZml0KGNtZWR2IH4gLiwgZGF0YSA9IHRyYWluKQ0KbG0yICU+JQ0KICBwcmVkaWN0KHRlc3QpICU+JQ0KICBiaW5kX2NvbHModGVzdCAlPiUgc2VsZWN0KGNtZWR2KSkgJT4lDQogIHJtc2UodHJ1dGggPSBjbWVkdiwgZXN0aW1hdGUgPSAucHJlZCkNCmBgYA0KIyBQYXJ0IDEwIA0KYGBge3J9DQprbm4gPC0gbmVhcmVzdF9uZWlnaGJvcigpICU+JQ0KICBzZXRfZW5naW5lKCJra25uIikgJT4lDQogIHNldF9tb2RlKCJyZWdyZXNzaW9uIikgJT4lDQogIGZpdChjbWVkdiB+IC4sIGRhdGEgPSB0cmFpbikNCmtubiAlPiUNCiAgcHJlZGljdCh0ZXN0KSAlPiUNCiAgYmluZF9jb2xzKHRlc3QgJT4lIHNlbGVjdChjbWVkdikpICU+JQ0KICBybXNlKHRydXRoID0gY21lZHYsIGVzdGltYXRlID0gLnByZWQpDQpgYGA=