什么是R

在回归模型中,因变量(y)总的方差(信息)可以被称作总平方和(Total sum of squares,TSS),它由两部分组成[1]:

1. 模型可以解释的那部分信息(Model sum of squares, MSS

2. 模型解释不了的那部分信息,也称为error(Residual sum of squares, RSS

R指的是模型可以解释的那部分信息所占的百分比,即MSS/TSS

如果R2越大,那该模型能解释的部分也就越多,模型当然就越佳。

上述的概念看上去枯燥,并不是那么有意思。

所以,小编接下来将会用图片呈现6个不同大小的R2,有助于了解不同R2到底“长”什么样,一定让你终身难忘~

首先载入所需R包:

# install.packages("correlation")
# install.packages("ggplot2")
# install.packages("patchwork")library(correlation)   # 用于创建数据
library(ggplot2)
library(patchwork)

马上开始作图


第一张图:R2 = 0%

mydata_0 <- simulate_simpson(n = 500, r = 0, groups = 1)p1 <- ggplot(mydata_0, aes(V1, V2)) + geom_point(shape = 1, fill = "white", color = "firebrick1") + geom_smooth(method = "lm", se = FALSE, color = "firebrick1") + theme_minimal() + annotate("text", x = 3, y = -3, label = "R-squared: 0%") + labs(x = "", y = "")
p1


第二张图: R2 = 10%

mydata_0.1 <- simulate_simpson(n = 500, r = sqrt(0.1), groups = 1)p2 <- ggplot(mydata_0.1, aes(V1, V2)) + geom_point(shape = 1, fill = "white", color = "deepskyblue3") + geom_smooth(method = "lm", se = FALSE, color = "deepskyblue3") + theme_minimal() + annotate("text", x = 3, y = -3, label = "R-squared: 10%") + labs(x = "", y = "")
p2


第三张图: R2 = 50%

mydata_0.5 <- simulate_simpson(n = 500, r = sqrt(0.5), groups = 1)p3 <- ggplot(mydata_0.5, aes(V1, V2)) + geom_point(shape = 1, fill = "white", color = "goldenrod1") + geom_smooth(method = "lm", se = FALSE, color = "goldenrod1") + theme_minimal() + annotate("text", x = 3, y = -3, label = "R-squared: 50%") + labs(x = "", y = "")
p3


第四张图: R2 = 70%

mydata_0.7 <- simulate_simpson(n = 500, r = sqrt(0.7), groups = 1)p4 <- ggplot(mydata_0.7, aes(V1, V2)) + geom_point(shape = 1, fill = "white", color = "mediumpurple1") + geom_smooth(method = "lm", se = FALSE, color = "mediumpurple1") + theme_minimal() + annotate("text", x = 3, y = -3, label = "R-squared: 70%") + labs(x = "", y = "")
p4


第五张图: R2 = 90%

mydata_0.9 <- simulate_simpson(n = 500, r = sqrt(0.9), groups = 1)p5 <- ggplot(mydata_0.9, aes(V1, V2)) + geom_point(shape = 1, fill = "white", color = "orange3") + geom_smooth(method = "lm", se = FALSE, color = "orange3") + theme_minimal() + annotate("text", x = 3, y = -3, label = "R-squared: 90%") + labs(x = "", y = "")
p5


第六张图: R2 = 100%

mydata_1 <- simulate_simpson(n = 500, r = sqrt(1), groups = 1)p6 <- ggplot(mydata_1, aes(V1, V2)) + geom_point(shape = 1, fill = "white", color = "palegreen4") + geom_smooth(method = "lm", se = FALSE, color = "palegreen4") + theme_minimal() + annotate("text", x = 3, y = -3, label = "R-squared: 100%") + labs(x = "", y = "") p6


最后,将6张图片合并,然后点击收藏

(p1 + p2 + p3) / (p4 + p5 + p6)

好啦,今天的内容就到这里。

如果有帮助,记得分享给需要的人

参考文献

[1]. The Elements of Statistical Learning

▌声明:本文由R语言和统计首发,如需转载请联系我们

▌编辑:June

▌我们的宗旨是:让R语言和统计变得简单!

往期精品(点击图片直达文字对应教程)

机器学习

后台回复“生信宝典福利第一波”或点击阅读原文获取教程合集

什么是R方?这6张图会让你终身难忘~相关推荐

  1. R语言使用lm构建线性回归模型、并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图、可视化模型的残差、模型预测中系统误差的一个例子 、自定义函数计算R方指标和均方根误差RMSE

    R语言使用lm构建线性回归模型.并将目标变量对数化(log10)实战:可视化模型预测输出与实际值对比图.可视化模型的残差.模型预测中系统误差的一个例子 .自定义函数计算R方指标和均方根误差RMSE 目 ...

  2. R语言将多张可视化结果图像保存到PDF中实战:多图保存到同一PDF页、将多个绘图保存到PDF格式的不同页面

    R语言将多张可视化结果图像保存到PDF中实战:多图保存到同一PDF页.将多个绘图保存到PDF格式的不同页面 目录 R语言将多张可视化结果图像保存到PDF中实战:多图保存到同一PDF页.将多个绘图保存到 ...

  3. R语言可视化包ggplot2在一张图中画出两条线实战

    R语言可视化包ggplot2在一张图中画出两条线实战 目录 R语言可视化包ggplot2在一张图中画出两条线实战

  4. r语言ggplot2一夜多图_ggplot2绘图:多张图合并为一张

    以下内容来自教程 R语言中多张图画到同一个页面上常用的函数为par()和layout() par()函数详解 layout()函数的简单使用 但是这两个函数不适用于ggplot2:ggplot2作图如 ...

  5. r中gglot怎么组合多张图_最终版本Science级组合图表绘制

    简介 ggcor 是 厚哥最近的作品,功能完全代替了前两次的你终于可以做这张图和重大升级的两个science组合图表绘制.这里我也为大家带肋实战教程,总体来说厚哥这个ggcor包用起来还是挺方便的,将 ...

  6. r语言把多个图合并在一张图_R语言绘图 | 折线图画法,如何画出你满意的图?

    作者:丁点helper 来源:丁点帮你 上篇文章中,我们用世界银行的例子给大家介绍了散点图怎么画,那折线图呢? 绘制折线图 如果将散点图上的点从左往右连接起来,就会得到一个折线图.今天我们以R中自带的 ...

  7. R语言ggplot2可视化、在一张图中画出两条曲线(two lines in same ggplot2 graph)、使用pdf函数将ggplot2可视化图像保存到指定目录的pdf格式文件中

    R语言ggplot2可视化.在一张图中画出两条曲线(two lines in same ggplot2 graph).使用pdf函数将ggplot2可视化图像保存到指定目录的pdf格式文件中 目录

  8. r语言 把2条roc曲线画在同一个图上_R语言如何将多个图像画到一张图

    介绍 有时候我们需要将多个图像排列好放到一张图上,对于R语言基础包的函数,比如plot, barplot, hist等,是可以通过par, layout进行排版,但是对于ggplot的图像,我们需要使 ...

  9. r中gglot怎么组合多张图_继电器组合扫盲篇

    好多小伙伴留言说,经常看到一些继电器组合,但是不知道是做什么用的,也不知道是不是定型组合,有什么用,怎么命名的?下面咱们就这些问题开展延伸,有需要的小伙伴可以先收藏,懂得多的可以留言区里补充. 先来一 ...

  10. R语言 将多条生存曲线画到一起(不是拼图) ,一张图绘制多条生存曲线

    网上找破了头都没找到这个办法,只找到一堆拼图的办法 其实方法很简单,survival包自带这个函数:ggsurvplot_combine() library(survival) library(sur ...

最新文章

  1. 连接MySQL的10060错误:Can't connect to MySQL server on '*.*.*.*'(10060)
  2. 统计学---数据的标准化
  3. 深圳职业技术学院计算机工程学院江学锋,毕业论文附属材料07013505刘丽.doc
  4. Git之深入解析在没有合适的网络或者可共享仓库情况下的git bundle打包操作
  5. [蓝桥杯2016决赛]阶乘位数-数论
  6. 创建react应用程序_使用SpringWebFlux的React式Web应用程序
  7. 十年云计算大爆发,微软正在摧毁其它竞争对手
  8. ai人工智能的数据服务_从AI数据集中消除无意识的偏见
  9. javascript性能
  10. 2016设置方框的尺寸_手把手教你用Word打印标准尺寸的身份证“复印件”
  11. ubuntu使用笔记
  12. PHP脚本调用systemctl,centos7之systemctl
  13. 泛型list集合类转换成DataTable、datatable转list
  14. 数据流分析之WorkList Algorithm
  15. matlab实现匹配滤波器实验报告,匹配滤波器的仿真实验报告
  16. DirectoryEntry IIS操作
  17. 阿里巴巴十周年晚会,马云震撼照片
  18. 全球通史读书笔记上(第七章——战争的起源)
  19. Windows10系统修改桌面图标间距的方法介绍
  20. 神仙级编程神器,吹爆

热门文章

  1. 虚幻引擎4艺术大师 - 中文版免费分享
  2. UE4-PixelStreaming(虚幻引擎4-像素流技术)笔记
  3. 通达信筹码循环指标源码 显示吸筹拉升出货的过程
  4. 罗格斯的计算机科学博士奖学金,移动性视角下智能城市的物理信息系统
  5. Docker修改默认网段
  6. 技能学习:学习使用golang(gin框架) + vue.js,开发前端全栈网站-1.工具和本地环境
  7. Django之DRF自定义action
  8. LED显示屏安装方法
  9. 前端JavaScript学习网站(重磅推荐)
  10. Triple-Speed Ethernet(tse)FPGA软核MAC测试