随笔分类 - R语言
R语言学习笔记
摘要:谱系图的画法 谱系图的各种画法,使用函数as.dendrogram() 第一种 第二种 第三种 第四种
阅读全文
摘要:使用ggplot2进行数据可视化 1 mpg数据框 mpg 包含了由美国环境保护协会收集的 38 种车型的观测数据。 mpg 中包括如下变量。 • displ:引擎大小,单位为升。 • hwy:汽车在高速公路上行驶时的燃油效率,单位为英里 / 加仑(mpg)。与燃油效率高 的汽车相比,燃油效率低的汽
阅读全文
摘要:使用lattice进行高级绘图-- 自定义图形条带 面板条带默认的背景是:第一个调节变量是桃红色,第二个调节变量是浅绿色,第三个调节变量是浅蓝色。令人高兴地是,我们可以自定义颜色、字体和这些条带的其他方面。 让我们先从条带函数开始。正如lattice中的高水平图形函数允许我们通过控制每个面板的内容指
阅读全文
摘要:使用lattice进行高级绘图-- 图形参数 查看默认的设置: show.settings() 把它们保存到名为mysettings的列表中: mysettings <- trellis.par.get() 以使用names()函数来查看列表的成分: names(mysettings) 体到叠加符号
阅读全文
摘要:使用lattice进行高级绘图-- 分组变量 当你在lattice绘图公式中增加调节变量时,该变量每个水平的独立面板就会产生。如果想添加的结果和每个水平正好相反,可以指定该变量为分组变量。 比方说,我们想利用核密度图展示使用手动和自动变速器时汽车油耗的分布。我们可以使用下面的代码来添加相应的图形:(
阅读全文
摘要:使用lattice进行高级绘图-- 面板函数 每一个高水平的画图函数都采用了默认的函数来绘制面板图。默认函数遵循命名规则panel.graph_function,其中graph_function指的是高水平的函数。例如: xyplot(mpg~wt|displacement, data=mtcars
阅读全文
摘要:使用lattice进行高级绘图-- 调节变量 通常情况下,调节变量是因子。但是对于连续的变量应该如何操作呢?一种方法是使用R的cut()函数将连续的变量转化为离散的变量。另一种方法是,lattice包提供的函数可以将连续的变量转化为名为shingle的数据结构。具体来说,连续变量被分成一系列(可能)
阅读全文
摘要:使用lattice进行高级绘图-- lattice 包 lattice包提供了用于可视化单变量和多变量数据的一整套图形系统。许多用户转向使用lattice包是因为它能很容易地生成网格图形。 网格图形能够展示变量的分布或变量之间的关系,每幅图代表一个或多个变量的各个水平。 思考下面的问题:纽约合唱团各
阅读全文
摘要:高级编程--编写有效的代码 在程序员中间流传着一句话:“优秀的程序员是花一个小时来调试代码而使得它的运算速度提高一秒的人。”R是一种鲜活的语言,大多数用户不用担心写不出高效的代码。作为一般规则,让代码易于理解、易于维护比优化它的速度更重要。但是当你使用大型数据集或处理高度重复的任务时,速度就成为一个
阅读全文
摘要:高级编程--面向对象的编程 R是一个基于使用泛型函数的面向对象的编程语言。每个对象有一个类属性,这个类属性决定当对象的副本传递到类似于print()、plot()和summary()这些泛型函数时运行什么代码。 R有两个分离的面向对象编程的模型。S3模型相对更老、更简单、结构更少。S4模型更新且更复
阅读全文
摘要:高级编程--创建函数 在R中处处是函数。算数运算符+、-、/和*实际上也是函数。例如,2 + 2等价于 "+"(2, 2)。 1. 函数语法 函数的语法格式是: functionname <- function(parameters){ statements return(value) } 如果函数
阅读全文
摘要:高级编程--控制结构 当R解释器运行代码时,它按顺序逐行读取。如果一行不是一个完整的语句,它会读取附加行直到可以构造一个完全的语句。例如,如果你想计算3+2+5的和,可以运行代码: 3 + 2 + 5 也可以运行下列代码: 3 + 2 + 5 #第一行末尾的+号表示语句不是完整的。 你想有条件的或是
阅读全文
摘要:高级编程--索引 任何数据对象中的元素都可以通过索引来提取。提取元素可以使用object[index],其中object是向量,index是一个整数向量。如果原子向量中的元素已经被命名,index也可以是这些名字中的字符串向量。需要注意的是,R中的索引从1开始,而不是像其他语言一样从0开始。 下面是
阅读全文
摘要:数据类型--泛型向量或列表 列表是原子向量和/或其他列表的集合。数据框是一种特殊的列表,集合中每个原子向量都有相同的长度。在安装R时自带iris数据框,这个数据框描述了150种植物的四种物理测度及其种类(setosa、versicolor或virginica): head(iris) 这个数据框实际
阅读全文
摘要:1 R 语言回顾 R是一种面向对象的、实用的数组编程语言,其中的对象是专门的数据结构,存储在RAM中,通过名称或符号访问。对象的名称由大小写字母、数字0~9、句号和下划线组成。名称是区分大小写的,而且不能以数字开头;句号被视为没有特殊含义的简单字符。 不像C和C++语言,在R语言中不能直接得到内存的
阅读全文
摘要:使用ggplot2进行高级绘图--修改 ggplot2 图形的外观 1 坐标轴 ggplot2包会在创建图时自动创建刻度线、刻度标记标签和坐标轴标签。它们往往看起来不错,但是有时我们需要在更大程度上控制它们的外观。我们已经知道了如何通过labs()函数来添加标题并改变坐标轴标签。那么如何自定义轴标签
阅读全文
摘要:使用ggplot2进行高级绘图--刻面 如果组在图中并排出现而不是重叠为单一的图形,关系就是清晰的。我们可以使用facet_wrap()函数和facet_grid()函数创建网格图形(在ggplot2中也称刻面图)。 ggplot2的刻面图函数 其中var、rowvar和colvar是因子。 看一下
阅读全文
摘要:使用ggplot2进行高级绘图--分组 为了理解数据,在一个图中画出两个或更多组的观察值通常是很有帮助的。在R中,组通常用分类变量的水平(因子)来定义。分组是通过ggplot2图将一个或多个带有诸如形状、颜色、填充、尺寸和线类型的视觉特征的分组变量来完成的。ggplot()声明中的aes()函数负责
阅读全文
摘要:用几何函数指定图的类型 ggplot()函数指定要绘制的数据源和变量,几何函数则指定这些变量如何在视觉上进行表示(使用点、条、线和阴影区)。下表列出了比较常见的几何函数,以及经常使用的选项。 几何函数 几何函数的常见选项 选项pch=用于指定绘制点时使用的符号。 产生如图所示的直方图: data(s
阅读全文
摘要:使用ggplot2进行高级绘图 除了基础图形,grid、lattice和ggplot2软件包也提供了图形系统,它们克服了R基础图形系统的低效性,大大扩展了R的绘图能力。 grid图形系统可以很容易地控制图形基础单元,给予编程者创作图形的极大灵活性。 lattice包通过一维、二维或三维条件绘图,即所
阅读全文