参考资料:《数据探掘 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. UltraSoft - Alpha - Scrum Meeting 4

    Date: Apr 18th, 2020. 会议内容为 例行汇报. Scrum 情况汇报 进度情况 组员 负责 前两日进度 后两日任务 CookieLau PM 完成前后端交互规格的约定,了解前后端进 ...

  2. sed初理多行合并+sed之G、H、g、h使用+sed n/N使用说明

    转载:[shell]sed处理多行合并 - seyjs - 博客园 (cnblogs.com) 文件格式 table=t1 name owner address table=t2 id text co ...

  3. hdu 1171 Big Event in HDU(背包DP)

    题意: 杭电搬迁,有N种设备,每种设备有个价值V,数量M,要求将这些设备平分,使得平分后两边的总价值尽可能地相等. 输出两边各自的总价值. 思路: 背包DP后,P=所有的总价值/2,然后从P开始往两边 ...

  4. 利用pyplot绘制sin(x)和cos(x)的组合图像

    一.实验目标 (1)   掌握numpy库的使用 (2)   掌握matplotlib库的使用 (3)   掌握pyplot的基本函数和方法 二.实验内容 import matplotlib.pyla ...

  5. GitHub上 README 增加图片标签

    hey Guys~ 你可能遇到的GitHub上好的项目都有一个非常棒的README,其中不乏用到一些非常好看的标签.比如下面这样: walle fastjson 那我们怎样自己添加一个高大上图片标签呢 ...

  6. Pip安装Django超时(time out)解决方法

    (ll_env)learning_log$  pip install Django  执行该命令,始终报错,如上图 解决方法如下: pip install  -i http://pypi.douban ...

  7. RocketMQ 5.0 POP 消费模式探秘

    作者:凯易&耘田 审核校对:白玙 编辑&排版:雯燕 前言:随着 RocketMQ 5.0 preview 的发布,5.0 的重大特性逐步与大家见面.POP Consumer 作为 5. ...

  8. MnogoDB唯一索引,稀疏索引

    1,单个字段唯一索引 db.collection.createIndex({name:1},{unique:true} 2,多个字段联合索引示例 db.collection.createIndex({ ...

  9. RocketMQ源码详解 | Consumer篇 · 其一:消息的 Pull 和 Push

    概述 当消息被存储后,消费者就会将其消费. 这句话简要的概述了一条消息的最总去向,也引出了本文将讨论的问题: 消息什么时候才对被消费者可见? 是在 page cache 中吗?还是在落盘后?还是像 K ...

  10. Salesforce Consumer Goods Cloud 浅谈篇一之基础介绍

    本篇参考: https://baike.baidu.com/item/%E6%B6%88%E8%B4%B9%E5%93%81/425802?fr=aladdin https://help.salesf ...