参考资料:《数据探掘 R语言实战》 p65-P68

install.packages("rattle") # 获取实验数据集
install.packages("ellipse") # 获取构建相关图的函数plotcorr
rm(list = ls())
library("ellipse") # 加载包
library("rattle")
data(weather) # 加载数据集
head(weather) # 查看数据集
##         Date Location MinTemp MaxTemp Rainfall Evaporation Sunshine
## 1 2007-11-01 Canberra 8.0 24.3 0.0 3.4 6.3
## 2 2007-11-02 Canberra 14.0 26.9 3.6 4.4 9.7
## 3 2007-11-03 Canberra 13.7 23.4 3.6 5.8 3.3
## 4 2007-11-04 Canberra 13.3 15.5 39.8 7.2 9.1
## 5 2007-11-05 Canberra 7.6 16.1 2.8 5.6 10.6
## 6 2007-11-06 Canberra 6.2 16.9 0.0 5.8 8.2
## WindGustDir WindGustSpeed WindDir9am WindDir3pm WindSpeed9am
## 1 NW 30 SW NW 6
## 2 ENE 39 E W 4
## 3 NW 85 N NNE 6
## 4 NW 54 WNW W 30
## 5 SSE 50 SSE ESE 20
## 6 SE 44 SE E 20
## WindSpeed3pm Humidity9am Humidity3pm Pressure9am Pressure3pm Cloud9am
## 1 20 68 29 1019.7 1015.0 7
## 2 17 80 36 1012.4 1008.4 5
## 3 6 82 69 1009.5 1007.2 8
## 4 24 62 56 1005.5 1007.0 2
## 5 28 68 49 1018.3 1018.5 7
## 6 24 70 57 1023.8 1021.7 7
## Cloud3pm Temp9am Temp3pm RainToday RISK_MM RainTomorrow
## 1 7 14.4 23.6 No 3.6 Yes
## 2 3 17.5 25.7 Yes 3.6 Yes
## 3 7 15.4 20.2 Yes 39.8 Yes
## 4 7 13.5 14.1 Yes 2.8 Yes
## 5 7 11.1 15.4 Yes 0.0 No
## 6 5 10.9 14.8 No 0.2 No
test_data <- weather[, 12:21] # 第12到21列为数值型
cor_matrix <- cor(test_data, use = "pairwise") # 两两变量求相关系数
cor_matrix # 显示结果
##              WindSpeed9am WindSpeed3pm Humidity9am Humidity3pm Pressure9am
## WindSpeed9am 1.00000000 0.47296617 -0.2706229 0.14665712 -0.35633183
## WindSpeed3pm 0.47296617 1.00000000 -0.2660925 -0.02636775 -0.35980011
## Humidity9am -0.27062286 -0.26609247 1.0000000 0.54671844 0.13572697
## Humidity3pm 0.14665712 -0.02636775 0.5467184 1.00000000 -0.08794614
## Pressure9am -0.35633183 -0.35980011 0.1357270 -0.08794614 1.00000000
## Pressure3pm -0.24795238 -0.33732535 0.1344205 -0.01005189 0.96789496
## Cloud9am 0.10184246 -0.02642642 0.3928416 0.55163264 -0.15755279
## Cloud3pm -0.02247149 0.00720724 0.2719381 0.51010790 -0.14100043
## Temp9am 0.06407405 -0.01776636 -0.4365506 -0.25568147 -0.46041819
## Temp3pm -0.23518635 -0.18756965 -0.3551186 -0.58167615 -0.25367375
## Pressure3pm Cloud9am Cloud3pm Temp9am Temp3pm
## WindSpeed9am -0.24795238 0.10184246 -0.02247149 0.06407405 -0.2351864
## WindSpeed3pm -0.33732535 -0.02642642 0.00720724 -0.01776636 -0.1875697
## Humidity9am 0.13442050 0.39284158 0.27193809 -0.43655057 -0.3551186
## Humidity3pm -0.01005189 0.55163264 0.51010790 -0.25568147 -0.5816761
## Pressure9am 0.96789496 -0.15755279 -0.14100043 -0.46041819 -0.2536738
## Pressure3pm 1.00000000 -0.12894408 -0.14383718 -0.49263629 -0.3454853
## Cloud9am -0.12894408 1.00000000 0.52521793 0.02104135 -0.2023440
## Cloud3pm -0.14383718 0.52521793 1.00000000 0.04094519 -0.1728142
## Temp9am -0.49263629 0.02104135 0.04094519 1.00000000 0.8444058
## Temp3pm -0.34548531 -0.20234405 -0.17281423 0.84440581 1.0000000
col <- 1:10 # 填充颜色
plotcorr(cor_matrix, col = col, type = "lower", diag = F)

相关性越强圆形越窄,左倾斜(\)表示负相关,右倾斜(/)表示正相关,例如Temp3pm和Temp9am为正相关

# numbers = T, diag = T
plotcorr(cor_matrix, numbers = T, type = "lower", diag = T)

  • col 设置椭圆填充颜色

  • type 设置显示上三角、下三角、全部显示(upper、lower、full)

  • diag 逻辑值,是否显示主对角线

  • numbers 逻辑值,是否用相关系数值取代椭圆,数值会增大10倍四舍五入

利用elliipse做相关图的更多相关文章

  1. Java基础-继承 利用接口做参数,写个计算器,能完成+-*/运算

    38.利用接口做参数,写个计算器,能完成+-*/运算 (1)定义一个接口Compute含有一个方法int computer(int n,int m); (2)设计四个类分别实现此接口,完成+-*/运算 ...

  2. 利用SCI做的一个足球答题系统

    SCI,异步串行通信接口,内置独立的波特率产生电路和SCI收发器,可以选择发送8或9个数据位(其中一位可以指定为奇或偶校验位). SCI是全双工异步串行通信接口,主要用于MCU与其他计算机或设备之间的 ...

  3. 利用toString做类型的判断

    //利用toString做类型的判断 : /*var arr = []; alert( Object.prototype.toString.call(arr) == '[object Array]' ...

  4. 利用boost做string到wstring转换,以及字符集转换 - Error - C++博客

    利用boost做string到wstring转换,以及字符集转换 - Error - C++博客 利用boost做string到wstring转换,以及字符集转换 #include <boost ...

  5. 利用Python做绝地科学家(外挂篇)

    i春秋作家:奶权 前言  玩吃鸡时间长的鸡友们 应该都知道现在的游戏环境非常差 特别在高端局 神仙满天飞 搞得很多普通玩家非常没有游戏体验  因为吃鸡的火爆 衍生出了一条巨大的外挂利益链 导致市面上出 ...

  6. python idea 利用树莓派做家庭报警系统

    1 利用树莓派做家庭报警系统idea 功能如下: 1.程序家侧人不在家(7:00-6:00) 2.树莓派搭配摄像头,对这门进行图像识别,如果变化,门开了,就报警: 3.报警的方式是给我发短信,采信,或 ...

  7. Unity利用AnimationCurve做物体的各种运动

    ​之前一直都是自己学习Unity各种做Demo,最近开始正式使用Unity来做一个款2d的游戏. 其中在做一个类似小球弹跳运动的时候遇到了点问题,查找了很多资料,无意间发现AnimationCurve ...

  8. 【译文】利用STAN做贝叶斯回归分析:Part 2 非正态回归

    [译文]利用STAN做贝叶斯回归分析:Part 2 非正态回归 作者 Lionel Hertzogn 前一篇文章已经介绍了怎样在R中调用STAN对正态数据进行贝叶斯回归.本文则将利用三个样例来演示怎样 ...

  9. KNIMI数据挖掘建模与分析系列_002_利用KNIMI做商超零售关联推荐

    利用KNIMI做商超零售关联推荐 http://blog.csdn.net/shuaihj 一.測试数据 须要測试数据,请留下邮箱 二.训练关联推荐规则 1.读取销售记录(sales.table) 2 ...

随机推荐

  1. Alpha-功能规格说明书

    项目 内容 这个作业属于哪个课程 2021春季软件工程(罗杰 任健) 这个作业的要求在哪里 团队项目-计划-功能规格说明书 一.引言 1. 项目简介 项目团队:删库跑路对不队 项目名称:题士 项目内容 ...

  2. filebeat收集日志到elsticsearch中并使用ingest node的pipeline处理

    filebeat收集日志到elsticsearch中 一.需求 二.实现 1.filebeat.yml 配置文件的编写 2.创建自定义的索引模板 3.加密连接到es用户的密码 1.创建keystore ...

  3. SCons - 简单而强大的项目编译脚本(原文https://www.cnblogs.com/binchen-china/p/5646791.html)

    N年前学的makefile,当时还勉强能写一些简单的工程编译,现在已经基本忘了.makefile确实编写复杂,而且平时也不是经常使用,容易忘记.偶识了scons,一切都变的简单了.最近研究了下scon ...

  4. Django(72)Django认证系统库--djoser

    djoser是什么?   作用:Django认证系统的REST实现.djoser库提供了一组Django Rest Framework视图,用于处理注册.登录.注销.密码重置和帐户激活等基本操作.它适 ...

  5. MySQL怎么缓解读的压力的?---buffer pool

    每当我们想要缓解读,一般会想到什么? 预读取,缓存 缓存 缓存,其实就是将高频访问的数据放到内存里面,减少读盘的次数. 为了提高内存的利用率,MySQL还建立了缓存池,也就是buffer pool,存 ...

  6. php swoft redis 发布和订阅

    //订阅 public function subscribe() { /* @var \Swoft\Redis\Redis $redis */ $redis = App::getBean(\Swoft ...

  7. Java的了解

    Java的基础了解 第一天学习的重要知识点: 1.任何的程序本质有三个:变量:if语句:循环语句. 2.Java的类型:即是编译型也是解释型. 3.JVM:执行bteecode字节码的"虚拟 ...

  8. 多线程 | 03 | CAS机制

    Compare and swap(CAS) 当前的处理器基本都支持CAS,只不过每个厂家所实现的算法并不一样罢了,每一个CAS操作过程都包含三个参数:一个内存地址V,一个期望的值A和一个新值B,操作的 ...

  9. 端口被占用(启动tomcat时 错误: 代理抛出异常 : java.rmi.server.ExportException: Port already in use: 1099的解决办法)

    一.问题描述 在IntelliJ IDEA 中启动Tomcat服务器时就出现了如下图所示的错误: 错误: 代理抛出异常错误**: java.rmi.server.ExportException: Po ...

  10. 02 | 顶层对象和global对象

    顶层对象的属性 顶层对象,在浏览器环境指的是window对象,在Node指的是global对象.ES5之中,顶层对象的属性与全局变量是等价的. window.a = 1; a // 1 a = 2; ...