😀
Euclid Jie's Book
  • Introduction
  • 资源网站
  • 亲测好用的软件
    • GitBook
    • VSCode
  • 旁门左道
    • 既爱又恨的编码格式
    • datetime与pd.to_datetime对比
  • Python
    • Pip介绍
    • Python虚拟环境
    • Python类库
    • DataFrame函数
    • 时间格式数据处理
    • Numpy函数
    • python的IDE配置
    • 创建Package并上传至Pypi
    • Unitest
  • Machine Learning
    • PyTorch Lightning
  • R语言
    • 英文分词
    • 回归分析
    • 绘图专栏
    • 图解中心化、标准化对回归的影响
  • 课程知识点
    • 回归分析
    • 因子分析
    • 残差诊断
    • 异方差检验
  • 网络爬虫
    • BeautifulSoup
    • Selenium
    • Urllib3
    • IP代理池
  • 数据库
    • Mongo数据库
    • Redis数据库
    • ClickHouse数据库
    • MySQL数据库
    • Postgres
  • Git
  • 服务器相关
  • Linux命令
  • Docker相关
  • 正则表达式
  • Uqer
  • SSH
  • BAT
  • stata
  • 装机
  • 文献相关
  • 本文排版
由 GitBook 提供支持
在本页
  • 中心化的影响
  • 数值模拟
  • 回归拟合
  • 图解
在GitHub上编辑
  1. R语言

图解中心化、标准化对回归的影响

数值模拟:图解中心化和标准化对系数估计的影响, 一元

中心化的影响

数值模拟

x1 <- rnorm(50,4,2)
e <- rnorm(50,0,0.1)
y <- -2 + x1 + e

x1.c <- scale(x1,scale=F)  # 中心化
y.c <- scale(y,scale=F)

回归拟合

m1 <- lm(y~x1)        # 原始回归模型, 带截距项
m2 <- lm(y~x1.c)      # x 中心化后的回归模型, 带截距项
m3 <- lm(y.c~x1)      # y 中心化后的回归模型, 带截距项
m4 <- lm(y.c~x1.c)    # x 和 y 均中心化后的回归模型, 带截距项
m5 <- lm(y~0+x1.c)    # x 中心化后的回归模型, 不带截距项
m6 <- lm(y.c~0+x1)    # y 中心化后的回归模型, 不带截距项
m7 <- lm(y.c~0+x1.c)  # x 和 y 均中心化后的回归模型, 不带截距项

图解

中心化带截距项

plot(x1, y, xlab="x", ylab="y", ylim=c(-8,8), xlim=c(-8,8), pch=15)    # 绘制散点图
abline(h=0, v=0, lty=2)
abline(reg=m1, col="black", lwd=2)                # 原始回归模型

points(x1.c, y, col="blue", pch=17)               # x 中心化后的数据
abline(reg=m2, col="blue", lwd=2)                 # x 中心化后的回归模型, 带截距项

points(x1, y.c, col="red", pch=19)                # y 中心化后的数据
abline(reg=m3, col="red", lwd=2)                  # y 中心化后的回归模型, 带截距项

points(x1.c, y.c, col="yellow", pch=21)           # x 和 y 均中心化后的数据
abline(reg=m4, col="yellow", lwd=2)               # x 和 y 均中心化后的回归模型, 带截距项

X中心化不带截距项

plot(x1, y, xlab="x", ylab="y", ylim=c(-8,8), xlim=c(-8,8), pch=15)    # 绘制散点图
abline(h=0, v=0, lty=2)
abline(reg=m1, col="black", lwd=2)                # 原始回归模型

points(x1.c, y, col="blue", pch=17)               # x 中心化后的数据
abline(reg=m5, col="blue", lwd=2)                 # x 中心化后的回归模型, 不带截距项
legend("topleft",inset = 0.04,c('m1','m6'),pch = c(15,17),col = c("black","blue"))

Y中心化不带截距项

plot(x1, y, xlab="x", ylab="y", ylim=c(-8,8), xlim=c(-8,8), pch=15)    # 绘制散点图
abline(h=0, v=0, lty=2)
abline(reg=m1, col="black", lwd=2)                # 原始回归模型
points(x1, y.c, col="red", pch=19)                # y 中心化后的数据
abline(reg=m6, col="red", lwd=2)                  # y 中心化后的回归模型, 不带截距项
legend("topleft",inset = 0.04,c('m1','m6'),pch = c(15,19),col = c("black","red"))

X中心化、Y中心化不带截距项

## 中心化对回归的影响 ##
plot(x1, y, xlab="x", ylab="y", ylim=c(-8,8), xlim=c(-8,8), pch=15)    # 绘制散点图
abline(h=0, v=0, lty=2)
abline(reg=m1, col="black", lwd=2)                # 原始回归模型
points(x1.c, y.c, col="yellow", pch=21)           # x 和 y 均中心化后的数据
abline(reg=m7, col="yellow", lwd=2)               # x 和 y 均中心化后的回归模型, 带截距项
legend("topleft",inset = 0.04,c('m1','m7'),pch = c(15,21),col = c("black","yellow"))

m2与m4的关系:将m2平移至过原点, 即得m4

m3 m4 m5得到相同的拟合直线, 但m4与m3 m5对应的响应变量不同, 是针对不同数据得到的拟合直线.

事实上, 当y的均值离0较远时, m6得到的拟合直线的效果往往较差,

这是因为假定的模型(不含截距项)与真实的模型(含有截距项)相差较远.

标准化带截距项

plot(x1, y, xlab="x", ylab="y", ylim=c(-8,8), xlim=c(-8,8), pch=15)    # 绘制散点图
abline(h=0, v=0, lty=2)
abline(reg=n1, col="black", lwd=2)                # 原始回归模型

points(x1.s, y, col="blue", pch=17)               # x 中心标准化后的数据
abline(reg=n2, col="blue", lwd=2)                 # x 中心标准化后的回归模型, 带截距项

points(x1.s, y.s, col="red", pch=19)              # x 和 y 均中心标准化后的数据
abline(reg=n3, col="red", lwd=2)                  # x 和 y 均中心标准化后的回归模型, 带截距项
legend("topleft",inset = 0.04,c('n1','n2','n3'),pch = c(15,17,19),col = c("black","blue","red"))

标准化不带截距项

plot(x1, y, xlab="x", ylab="y", ylim=c(-8,8), xlim=c(-8,8), pch=15)    # 绘制散点图
abline(h=0, v=0, lty=2)
abline(reg=n1, col="black", lwd=2)                # 原始回归模型

points(x1.s, y, col="blue", pch=17)               # x 中心标准化后的数据
abline(reg=n4, col="blue", lwd=2)                 # x 中心标准化后的回归模型, 带截距项

points(x1.s, y.s, col="red", pch=19)              # x 和 y 均中心标准化后的数据
abline(reg=n5, col="red", lwd=2)                  # x 和 y 均中心标准化后的回归模型, 带截距项
legend("topleft",inset = 0.04,c('n1','n4','n5'),pch = c(15,17,19),col = c("black","blue","red"))

n2与n4的关系:将n2平移至过原点, 即得n4

n3 n5得到相同的拟合直线

上一页绘图专栏下一页课程知识点

最后更新于2年前

image-20221124151118199
image-20221124151348892
image-20221124151832107
image-20221124151941300
image-20221124152505744
image-20221124152717695