1.4 包
R提供了大量开箱即用的功能,但它最激动人心的一部分功能是通过可选模块的下载和安装
来实现的。目前有2500多个①称为包(package)的用户贡献模块可从http://cran.r-project.org/
web/packages下载。这些包提供了横跨各种领域、数量惊人的新功能,包括分析地理数据、处理
蛋白质质谱,甚至是心理测验分析的功能。本书中多次使用了这些可选包。
1.4.1 什么是包
包是R函数、数据、预编译代码以一种定义完善的格式组成的集合。计算机上存储包的目录
称为库(library)。函数.libPaths()能够显示库所在的位置, 函数library()则可以显示库中
有哪些包。
R自带了一系列默认包(包括base、datasets、utils、grDevices、graphics、stats
以及methods),它们提供了种类繁多的默认函数和数据集。其他包可通过下载来进行安装。安装
好以后,它们必须被载入到会话中才能使用。命令search()可以告诉你哪些包已加载并可使用。
1.4.2 包的安装
有许多R函数可以用来管理包。第一次安装一个包,使用命令install.packages()即可。
举例来说,不加参数执行install.packages()将显示一个CRAN镜像站点的列表,选择其中一
个镜像站点之后,将看到所有可用包的列表,选择其中的一个包即可进行下载和安装。如果知道
自己想安装的包的名称,可以直接将包名作为参数提供给这个函数。例如,包gclus中提供了创
建增强型散点图的函数。可以使用命令install.packages("gclus")来下载和安装它。
一个包仅需安装一次。但和其他软件类似,包经常被其作者更新。使用命令update.packages()
可以更新已经安装的包。要查看已安装包的描述,可以使用installed.packages()命令,这
将列出安装的包,以及它们的版本号、依赖关系等信息。
1.4.3 包的载入
包的安装是指从某个CRAN镜像站点下载它并将其放入库中的过程。要在R会话中使用它,
还需要使用library()命令载入这个包。例如,要使用gclus包,执行命令library(gclus)
即可。当然,在载入一个包之前必须已经安装了这个包。在一个会话中,包只需载入一次。如果
需要,你可以自定义启动环境以自动载入会频繁使用的那些包。启动环境的自定义在附录B中有
详细描述。
——————————
① 截至本书中文版面世时,已超过4000个。——译者注
图灵社区会员 matrixvirus(matrixvirus@163.com) 专享 尊重版权

1.4.4 包的使用方法
载入一个包之后,就可以使用一系列新的函数和数据集了。包中往往提供了演示性的小型数
据集和示例代码,能够让我们尝试这些新功能。帮助系统包含了每个函数的一个描述(同时带有
示例),每个数据集的信息也被包括其中。命令help(package="package_name")可以输出某
个包的简短描述以及包中的函数名称和数据集名称的列表。使用函数help()可以查看其中任意
函数或数据集的更多细节。这些信息也能以PDF帮助手册的形式从CRAN下载。

包--R In Action的更多相关文章

  1. Struts2不扫描jar包中的action

    今天在做一个二开的项目,将struts打成jar包放在WEB-INF的目录下却扫描不到指定的路径,也就是http访问访问不到我们指定的action,其他代码可以正常使用,就是访问不到action.st ...

  2. struts 2中为什么抽象包不能包含action?

    struts 2中为什么抽象包不能包含action?麻烦写详细点!

  3. R in Action(0) 开篇

    这几年数据挖掘的火热,也越来越多的人把R作为数据挖掘的一个辅助工具,据国际性组织kkguter统计有60%的人在挖掘过程中用到R工具,可见这个工具是多么的流行,对于数据统计.筛选以及画图绝对是神器.尽 ...

  4. reshape2包--R高效数据处理包

    介绍如何使用reshape2包将宽型数据转换成长型数据,将长型数据转换成宽型数据.Reshape2是Hadley Wickham开发和维护的. 1.长数据VS宽数据 宽型数据:每列代表一个不同的变量. ...

  5. ggplot2包--R可视化

    1.ggplot2发展历程 ggplot2是Hadley在爱荷华州立大学博士期间的作品,也是他博士论文的主题之一,实际上ggplot2还有个前身ggplot,但后来废弃了,某种程度上这也是Hadley ...

  6. praise包--R给你点赞!

    1.praise包干什么的? praise包就一个功能:赞你! 2.praise包怎么搞? 2.1安装 直接安装: install.packages("praise") 从gith ...

  7. rJava包---R与Java的接口

    1.安装 版本说明:Win10+R3.2.5+JKD1.7+eclipse-jee-mars-R-win32-x86_64 install.packages("rJava") 2. ...

  8. 针对不同包之间的action跳转,怎么配置?

    例如一下的例子:两个包,如何跳转 <struts>           <constant name="struts.enable.DynamicMethodInvocat ...

  9. R in action读书笔记(22)第十六章 高级图形进阶(下)

    16.2.4 图形参数 在lattice图形中,lattice函数默认的图形参数包含在一个很大的列表对象中,你可通过trellis.par.get()函数来获取,并用trellis.par.set() ...

随机推荐

  1. jquery 操作动态添加的元素

    动态添加的元素,无法侦听到事件,写法如下: 使用函数.on 格式为: $(父元素).on('event','selector',function(){ //do something }) 例如 < ...

  2. python系列十:python3函数

    #!/usr/bin/python #-*-coding:gbk-*- '''函数的简单规则:    函数代码块以 def 关键词开头,后接函数标识符名称和圆括号 ().    任何传入参数和自变量必 ...

  3. getTrim(strMz)-我的JavaScript函数库-mazey.js

    因为一些旧版本的浏览器对于JS的trim()不支持,所以可以用正则代替此功能. 参数:strMz,字符串,必需. function getTrim(strMz) {    return strMz.r ...

  4. MySQL中自增长与锁

    在InnoDB存储引擎中,对于每个含有自增长值的表都有一个自增长计数器(auto-increment counter)当对含有自增长的计数器的表进行插入操作时,这个计数器会被初始化,执行如下的语句可以 ...

  5. 单例 与 static

    单例的构造器是private的,不能直接用new 创建对象.static虽然可以随时使用,但是还是有被重新创建的可能. 举个例子,你希望任何时候有一个class A的实例就可以了class B {  ...

  6. 20170411 F110初始界面-建议清单

    功能块代码              F110 开发类                  FIBP  事务说明              自动付款参数 程序                  SAPF ...

  7. 剑指offer 面试53题

    面试53题: 题目:统计一个数字在排序数组中出现的次数. 思路:二分查找法,分别找到此数字在排序数组中第一次和最后一次出现的位置,然后次数等于两个位置之差加1. 时间复杂度:O(log n) 解题代码 ...

  8. 进程理论基础(Day32)

    背景知识 顾名思义,进程即一个软件正在进行的过程.进程是对正在运行程序的一个抽象. 进程的概念起源于操作系统,是操作系统最核心的概念,也是操作系统提供的最古老的也是最重要的抽象概念之一.操作系统的其他 ...

  9. Java多线程(Java总结篇)

    Java总结篇:Java多线程 多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的. 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上 ...

  10. Django基础(三)_分页器、COOKIE与SESSION、FORM表单

    分页器(paginator) 分页器的使用 >>> from django.core.paginator import Paginator >>> objects ...