6.5.3

1a) I would not use linear because the points follow a curve 1b)I would use a parabola because it appears to curve up to a peak and the fall at a similar to rate to which it rose

2a) The equation means that 8 hours is peak sleep time 2b) Happiness starts decreasing after 8 hours

  1. help
happy<-data.frame(x=c(0.00,1.00,2.00,3.00,4.00,5.00,6.00,7.00,8.00,9.00,1.01,1.11,1.21,1.31,1.41,1.51,1.61,1.71,1.81,1.91), y=c(2.89840027e0,1.808064e1,2.49052e1,3.8114241e1,4.65186e1,5.17108e1,6.316792e1,6.26684e1,6.702376e1,6.4720079e1,5.711712e1,5.324208e1,5.0189319e1,3.8284401e1,2.5770001e1,1.178748e1,2.19716003e0,-1.5252681e1,-3.3162001e1,-5.472124e1))

model <- lm(y ~ poly(x, 2), data=happy)
summary(model)

Call:
lm(formula = y ~ poly(x, 2), data = happy)

Residuals:
    Min      1Q  Median      3Q     Max 
-74.898  -9.068   4.752  13.575  41.630 

Coefficients:
            Estimate Std. Error t value Pr(>|t|)    
(Intercept)   28.763      6.767   4.250  0.00054 ***
poly(x, 2)1   82.914     30.265   2.740  0.01397 *  
poly(x, 2)2    8.304     30.265   0.274  0.78711    
---
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 30.26 on 17 degrees of freedom
Multiple R-squared:  0.3084,    Adjusted R-squared:  0.227 
F-statistic:  3.79 on 2 and 17 DF,  p-value: 0.04353

6.6.4

install.packages("class")
trying URL 'https://cran.rstudio.com/bin/macosx/big-sur-arm64/contrib/4.4/class_7.3-22.tgz'
Content type 'application/x-gzip' length 97481 bytes (95 KB)
==================================================
downloaded 95 KB

The downloaded binary packages are in
    /var/folders/0c/4z4yx80965g2ykwwtvdlplth0000gn/T//RtmpdiEKlw/downloaded_packages
library(class)
classy_data<-data.frame(x=c(2,4,6,3,4,7),y=c(3,2,5,6,4,3),class=c(1,1,2,1,1,2))
train_indices <- sample(1:nrow(classy_data), size = 1*nrow(classy_data))
train_labels <- classy_data$class
train_data <- classy_data[train_indices, -3]
test_data <- classy_data[-train_indices,-3]
test_labels <- classy_data$class[-train_indices]

knn_pred <- knn(train = train_data, test = test_data, cl = train_labels , k = 3)
confusion_matrix <- table(knn_pred, test_labels)
confusion_matrix
< table of extent 2 x 0 >

I am getting an error message because train_index was not found. I would like to discuss this in office hours

With k=5 it woulld be a class 1 but I did that after plotting it visually

  1. The confusion matrix incorrectly classified 1 virginica as a versacolor

library(class)
data("iris")
train_indices <- sample(1:nrow(iris), size = 0.7*nrow(iris))
train_data <- iris[train_indices, -5]
train_labels <- iris$Species[train_indices]
test_data <- iris[-train_index ,-5]
Error: object 'train_index' not found

I get the same error here, “Error: object ‘train_index’ not found” thus, I cannot run different k values

  1. this takes place in 4D space because there are four variables that decide classification
LS0tCnRpdGxlOiAiUiBOb3RlYm9vayIKb3V0cHV0OgogIGh0bWxfbm90ZWJvb2s6IGRlZmF1bHQKICBodG1sX2RvY3VtZW50OgogICAgZGZfcHJpbnQ6IHBhZ2VkCiAgcGRmX2RvY3VtZW50OiBkZWZhdWx0CiAgd29yZF9kb2N1bWVudDogZGVmYXVsdAotLS0KCjYuNS4zCgoxYSkgSSB3b3VsZCBub3QgdXNlIGxpbmVhciBiZWNhdXNlIHRoZSBwb2ludHMgZm9sbG93IGEgY3VydmUKMWIpSSB3b3VsZCB1c2UgYSBwYXJhYm9sYSBiZWNhdXNlIGl0IGFwcGVhcnMgdG8gY3VydmUgdXAgdG8gYSBwZWFrIGFuZCB0aGUgZmFsbCBhdCBhIHNpbWlsYXIgdG8gcmF0ZSB0byB3aGljaCBpdCByb3NlCgoyYSkgVGhlIGVxdWF0aW9uIG1lYW5zIHRoYXQgOCBob3VycyBpcyBwZWFrIHNsZWVwIHRpbWUKMmIpIEhhcHBpbmVzcyBzdGFydHMgZGVjcmVhc2luZyBhZnRlciA4IGhvdXJzCgozKSBoZWxwCgpgYGB7cn0KaGFwcHk8LWRhdGEuZnJhbWUoeD1jKDAuMDAsMS4wMCwyLjAwLDMuMDAsNC4wMCw1LjAwLDYuMDAsNy4wMCw4LjAwLDkuMDAsMS4wMSwxLjExLDEuMjEsMS4zMSwxLjQxLDEuNTEsMS42MSwxLjcxLDEuODEsMS45MSksIHk9YygyLjg5ODQwMDI3ZTAsMS44MDgwNjRlMSwyLjQ5MDUyZTEsMy44MTE0MjQxZTEsNC42NTE4NmUxLDUuMTcxMDhlMSw2LjMxNjc5MmUxLDYuMjY2ODRlMSw2LjcwMjM3NmUxLDYuNDcyMDA3OWUxLDUuNzExNzEyZTEsNS4zMjQyMDhlMSw1LjAxODkzMTllMSwzLjgyODQ0MDFlMSwyLjU3NzAwMDFlMSwxLjE3ODc0OGUxLDIuMTk3MTYwMDNlMCwtMS41MjUyNjgxZTEsLTMuMzE2MjAwMWUxLC01LjQ3MjEyNGUxKSkKCm1vZGVsIDwtIGxtKHkgfiBwb2x5KHgsIDIpLCBkYXRhPWhhcHB5KQpzdW1tYXJ5KG1vZGVsKQpgYGAKCjYuNi40CmBgYHtyfQppbnN0YWxsLnBhY2thZ2VzKCJjbGFzcyIpCmxpYnJhcnkoY2xhc3MpCmBgYAoxKQpgYGB7cn0KY2xhc3N5X2RhdGE8LWRhdGEuZnJhbWUoeD1jKDIsNCw2LDMsNCw3KSx5PWMoMywyLDUsNiw0LDMpLGNsYXNzPWMoMSwxLDIsMSwxLDIpKQp0cmFpbl9pbmRpY2VzIDwtIHNhbXBsZSgxOm5yb3coY2xhc3N5X2RhdGEpLCBzaXplID0gMSpucm93KGNsYXNzeV9kYXRhKSkKdHJhaW5fbGFiZWxzIDwtIGNsYXNzeV9kYXRhJGNsYXNzCnRyYWluX2RhdGEgPC0gY2xhc3N5X2RhdGFbdHJhaW5faW5kaWNlcywgLTNdCnRlc3RfZGF0YSA8LSBjbGFzc3lfZGF0YVstdHJhaW5faW5kZXgsLTNdCnRlc3RfbGFiZWxzIDwtIGNsYXNzeV9kYXRhJGNsYXNzWy10cmFpbl9pbmRleF0KCmtubl9wcmVkIDwtIGtubih0cmFpbiA9IHRyYWluX2RhdGEsIHRlc3QgPSB0ZXN0X2RhdGEsIGNsID0gdHJhaW5fbGFiZWxzICwgayA9IDMpCmNvbmZ1c2lvbl9tYXRyaXggPC0gdGFibGUoa25uX3ByZWQsIHRlc3RpbmdfbGFiZWxzKQpjb25mdXNpb25fbWF0cml4CmBgYApJIGFtIGdldHRpbmcgYW4gZXJyb3IgbWVzc2FnZSBiZWNhdXNlIHRyYWluX2luZGV4IHdhcyBub3QgZm91bmQuIEkgd291bGQgbGlrZSB0byBkaXNjdXNzIHRoaXMgaW4gb2ZmaWNlIGhvdXJzCgpXaXRoIGs9NSBpdCB3b3VsbGQgYmUgYSBjbGFzcyAxIGJ1dCBJIGRpZCB0aGF0IGFmdGVyIHBsb3R0aW5nIGl0IHZpc3VhbGx5CgoyKSBUaGUgY29uZnVzaW9uIG1hdHJpeCBpbmNvcnJlY3RseSBjbGFzc2lmaWVkIDEgdmlyZ2luaWNhIGFzIGEgdmVyc2Fjb2xvcgoKMykKYGBge3J9CmxpYnJhcnkoY2xhc3MpCmRhdGEoImlyaXMiKQp0cmFpbl9pbmRpY2VzIDwtIHNhbXBsZSgxOm5yb3coaXJpcyksIHNpemUgPSAwLjcqbnJvdyhpcmlzKSkKdHJhaW5fZGF0YSA8LSBpcmlzW3RyYWluX2luZGljZXMsIC01XQp0cmFpbl9sYWJlbHMgPC0gaXJpcyRTcGVjaWVzW3RyYWluX2luZGljZXNdCnRlc3RfZGF0YSA8LSBpcmlzWy10cmFpbl9pbmRleCAsLTVdCnRlc3RfbGFiZWxzIDwtIGlyaXMkU3BlY2llc1stdHJhaW5faW5kZXhdCmBgYApJIGdldCB0aGUgc2FtZSBlcnJvciBoZXJlLCAiRXJyb3I6IG9iamVjdCAndHJhaW5faW5kZXgnIG5vdCBmb3VuZCIgdGh1cywgSSBjYW5ub3QgcnVuIGRpZmZlcmVudCBrIHZhbHVlcwoKNCkgdGhpcyB0YWtlcyBwbGFjZSBpbiA0RCBzcGFjZSBiZWNhdXNlIHRoZXJlIGFyZSBmb3VyIHZhcmlhYmxlcyB0aGF0IGRlY2lkZSBjbGFzc2lmaWNhdGlvbgo=