当前位置: 首页 > news >正文

看书标记【数据科学:R语言实战 8】

看书标记——R语言

  • Chapter 8 数据可视化——绘图
      • 8.1 功能包
      • 8.2 散点图
        • 8.2.1 回归线
        • 8.2.2 lowess线条
        • 8.2.3 scatterplot函数
        • 8.2.4 Scatterplot矩阵
          • 1.splom——展示矩阵数据
          • 2.cpairs——绘图矩阵图
        • 8.2.5 密度散点图
      • 8.3 直方图和条形图
        • 8.3.1 条形图
        • 8.3.2 直方图 8.3.3 ggplot2
        • 8.3.4 词云

【数据科学:R语言实战】

Chapter 8 数据可视化——绘图

8.1 功能包

  • car(Companion to Applied Regression):回归工具
  • lattice:实现高级数据可视化
  • gclus:创建散点图
  • MASS
  • ggplot2

8.2 散点图

plot()

  • 参数
    x 自变量
    y 因变量
    type p点、l线、b两者、c指b的直线部分、o两者图形叠加部分、h柱状图垂线、s楼梯阶层、S其他阶层、n无绘图
    main 标题
    sub 副标题
    xlab x轴标记
    ylab y轴标记
    asp 纵横比
data <- read.csv("http://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data")  ##iris数据集
colnames(data) <- c("sepal_length", "sepal_width", "petal_length", "petal_width", "species")
summary(data)
plot(data$sepal_length, data$petal_length) ##常规
plot(data$sepal_length, data$petal_length, type="s")  ##s步骤和h柱状图
plot(data$sepal_length, data$petal_length, type="h")
8.2.1 回归线

abline()

  • 参数
    a 截距
    b 斜率
    h 画水平线
    v 画垂直线
    coef 仅包含截距和斜率
    reg coef的对象
abline(lm(data$petal_length~data$sepal_length), col="red")
8.2.2 lowess线条

lowess线条是用加权多项式回归进行计算的平滑线。
lowess()

  • 参数
    x 待用点向量
    y y轴,默认“NULL”
    f 较平滑跨度越大越平滑,默认2/3
    iter 迭代次数,默认为3,迭代次数越多时间越长
    delta 界定计算数值的密切度,默认值为x范围的1/100
lines(lowess(data$sepal_length,data$petal_length), col="blue")
8.2.3 scatterplot函数

scatterplot()

  • 参数
    x、y 坐标向量
    formula y~x 或者 y~x|z(按z分组绘图)
    las "0"创建与坐标轴平行的刻点标记,"1"创建水平标记
    lwd 线宽,默认1
    lty 线类型,默认1
    id.method/id.n/id.cex/id.col 标记点参数
    labels 点标记的向量
    log 是否使用点的标记比例尺
    xlim、ylim 轴限度
library(car)
scatterplot(data$sepal_length, data$petal_length)  ##有内置箱线图、简单回归线、平滑线、平滑抖动范围
8.2.4 Scatterplot矩阵
pairs(data)  ##矩阵数据
1.splom——展示矩阵数据

library(lattice);splom(data)
or
library(car);scatterplot.matrix(data) ##含有的数据信息更多


2.cpairs——绘图矩阵图
library(gclus)
cpairs(data)  ##cpairs对矩阵数据起辅助作用
df <- subset(data, select = -c(species) )  ##cor函数只以数据点形式运行
df.r <- abs(cor(df))  ##计算相关性
df.col <- dmat.color(df.r)  ##依相关性为每个子图指定颜色,不适用于多类别颜色
df.o <- order.single(df.r) 
cpairs(df, df.o, panel.colors=NULL)
8.2.5 密度散点图

hexbin()提供了一项能够展示两个变量中高度重复的机制

library(hexbin)
bin<-hexbin(data$sepal_length, data$petal_length) 
summary(bin)  ##默认30箱,生成36*31网格的六边形,最低网格1,最高网格1114,传播状况良好,网格计数均值1.38,表明重复度不足
#plot(bin)
bin<-hexbin(data$sepal_length, data$petal_length, xbins=10)   ##改用10个箱子后,密度数量有变好
summary(bin)
plot(bin)

8.3 直方图和条形图

8.3.1 条形图

barplot()

  • 参数
    height 主要的数据向量
    width 条宽向量
    space 每条左侧的空间大小
    **names.arg ** 名称向量
    legend.text 绘制图标
library(MASS)
HairEyeColor
summary(HairEyeColor)
counts <- table(HairEyeColor)
barplot(counts)  ##堆叠图
count <- table(Cars93$Cylinders)
barplot(count)
count <- table(Cars93$Cylinders, Cars93$Manufacturer)
barplot(count)
8.3.2 直方图 8.3.3 ggplot2

count <- table(Cars93 C y l i n d e r s , C a r s 93 Cylinders, Cars93 Cylinders,Cars93Manufacturer)
barplot(count)
library(ggplot2)
qplot(Cars93$Cylinders)


8.3.4 词云
page <- readLines("http://finance.yahoo.com") ##读取文本
corpus = Corpus(VectorSource(page))  ##语料库
corpus <- tm_map(corpus, tolower) ##小写
corpus <- tm_map(corpus, removePunctuation)
corpus <- tm_map(corpus, removeNumbers)
corpus <- tm_map(corpus, removeWords, stopwords("english"))
corpus <- tm_map(corpus, PlainTextDocument)  ##将语料库重新配置为文本文档
dtm = TermDocumentMatrix(corpus)
m = as.matrix(dtm)  ##转换为文本矩阵
v = sort(rowSums(m), decreasing = TRUE)
wordcloud(names(v), v, min.freq = 10)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • VS Code安装与vue项目新建
  • 百数教学——企业互联,让业务合作跨越距离与障碍
  • java Arrays.fill方法介绍
  • SQL基础——函数与约束
  • MySQL:从入门到放弃
  • redis的数据结构——压缩表(Ziplist)
  • NVIDIA刚刚发布了关于 AI 的免费在线课程!
  • CVPR2023《DNF: Decouple and Feedback Network for Seeing in the Dark》暗光图像增强论文阅读笔记
  • Linux命令学习 -- tar指令
  • 232. 用栈实现队列
  • WKWebView加载项目中网页的资源图片路径异常
  • Django | 从中间件的角度来认识Django发送邮件功能
  • 基于windows10的WSL详细安装与使用教程
  • nginx部署vue前端打包项目
  • 上位机图像处理和嵌入式模块部署(linux Qt程序的编译)
  • 【从零开始安装kubernetes-1.7.3】2.flannel、docker以及Harbor的配置以及作用
  • Mybatis初体验
  • Mysql数据库的条件查询语句
  • OSS Web直传 (文件图片)
  • vue数据传递--我有特殊的实现技巧
  • 从零到一:用Phaser.js写意地开发小游戏(Chapter 3 - 加载游戏资源)
  • 翻译:Hystrix - How To Use
  • 关于 Cirru Editor 存储格式
  • ionic异常记录
  • 仓管云——企业云erp功能有哪些?
  • 如何正确理解,内页权重高于首页?
  • ![CDATA[ ]] 是什么东东
  • # Pytorch 中可以直接调用的Loss Functions总结:
  • # 计算机视觉入门
  • #100天计划# 2013年9月29日
  • #include到底该写在哪
  • #基础#使用Jupyter进行Notebook的转换 .ipynb文件导出为.md文件
  • $(this) 和 this 关键字在 jQuery 中有何不同?
  • $emit传递多个参数_PPC和MIPS指令集下二进制代码中函数参数个数的识别方法
  • (12)目标检测_SSD基于pytorch搭建代码
  • (2)从源码角度聊聊Jetpack Navigator的工作流程
  • (2024)docker-compose实战 (8)部署LAMP项目(最终版)
  • (C语言)fgets与fputs函数详解
  • (ibm)Java 语言的 XPath API
  • (Redis使用系列) Springboot 整合Redisson 实现分布式锁 七
  • (八)Spring源码解析:Spring MVC
  • (差分)胡桃爱原石
  • (二)原生js案例之数码时钟计时
  • (二十四)Flask之flask-session组件
  • (分布式缓存)Redis持久化
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (论文阅读30/100)Convolutional Pose Machines
  • (十二)devops持续集成开发——jenkins的全局工具配置之sonar qube环境安装及配置
  • (四)模仿学习-完成后台管理页面查询
  • (算法)大数的进制转换
  • (原創) 博客園正式支援VHDL語法著色功能 (SOC) (VHDL)
  • (转)C语言家族扩展收藏 (转)C语言家族扩展
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)Mysql的优化设置
  • (转)程序员疫苗:代码注入