# Install and load the ISLR package
if (!require(ISLR)) {
install.packages("ISLR")
library(ISLR)
}
## Loading required package: ISLR
# Load the Auto dataset
data("Auto")
# Remove missing values
Auto <- na.omit(Auto)
# (a) Identify quantitative and qualitative predictors
quantitative_predictors <- c("mpg", "cylinders", "displacement", "horsepower", "weight", "acceleration")
qualitative_predictors <- c("year", "origin", "name")
# (b) Calculate the range of each quantitative predictor
range_data <- sapply(Auto[quantitative_predictors], range)
# (c) Calculate the mean and standard deviation of each quantitative predictor
mean_data <- sapply(Auto[quantitative_predictors], mean)
sd_data <- sapply(Auto[quantitative_predictors], sd)
# (d) Remove the 10th through 85th observations
Auto_subset <- Auto[-c(10:85), ]
# Calculate the range, mean, and standard deviation of each predictor in the subset
range_subset <- sapply(Auto_subset[quantitative_predictors], range)
mean_subset <- sapply(Auto_subset[quantitative_predictors], mean)
sd_subset <- sapply(Auto_subset[quantitative_predictors], sd)
# (e) Investigate predictors graphically
# Scatterplot matrix
pairs(Auto[quantitative_predictors])

# (f) Determine if other variables might be useful in predicting mpg
# Correlation matrix
correlation_matrix <- cor(Auto[quantitative_predictors])
# Plot correlations
library(corrplot)
## corrplot 0.92 loaded
corrplot(correlation_matrix, method = "circle")

# Plot scatterplots for mpg against other quantitative predictors
par(mfrow = c(2, 3))
for (predictor in quantitative_predictors[-1]) {
plot(Auto$mpg, Auto[[predictor]], xlab = "mpg", ylab = predictor)
}
