install.packages("tidyverse")
install.packages("caret")
install.packages("psych")
install.packages("car")
install.packages("splines")
install.packages("mgcv")
library(tidyverse)
library(caret)
library(psych)
library(car)
library(splines)
library(mgcv)
data("Boston", package = "MASS")# 加载数据
medv<-Boston$medv#自住房屋房价中位数
lstat<-Boston$lstat#地区中有多少房东属于低收入人群
corr.test(medv,lstat,use="complete",method="spearman",adjust="none")#呈高度负相关
set.seed(123)
training.samples<-Boston$medv%>%createDataPartition(p=0.8,list =FALSE)
train.data<-Boston[training.samples,]
test.data<-Boston[-training.samples,]# 将数据集分为训练集与验证集
ggplot(train.data, aes(lstat, medv) ) +
geom_point() +
stat_smooth()#using method = 'loess',局部加权回归
#线性模型
model<-lm(medv~lstat,data = train.data)
anova(model) #检验直线回归方程在总体中是否成立,p<0.05,方程成立
summary(model)
par(m