《rcookbook》中文笔记

上传人:第*** 文档编号:61908697 上传时间:2018-12-14 格式:PDF 页数:62 大小:742.71KB
返回 下载 相关 举报
《rcookbook》中文笔记_第1页
第1页 / 共62页
《rcookbook》中文笔记_第2页
第2页 / 共62页
《rcookbook》中文笔记_第3页
第3页 / 共62页
《rcookbook》中文笔记_第4页
第4页 / 共62页
《rcookbook》中文笔记_第5页
第5页 / 共62页
点击查看更多>>
资源描述

《《rcookbook》中文笔记》由会员分享,可在线阅读,更多相关《《rcookbook》中文笔记(62页珍藏版)》请在金锄头文库上搜索。

1、 R Cookbook 中文笔记 说明:本笔记主要提炼了R Cookbook书中的重点内容并按笔者的经验整理而来,对于 广大爱好者而言,不免会有偏差,笔记中也不乏翻译不到位之处,希望各位留言交流。 笔者信息 QQ:cador(2684929905) 邮箱: 博客: 2013 年 4 月 目 录 在 linux 系统中安装 R .6 获得帮助 .6 打印函数 .8 类型转换 .9 R 向量、索引及相关运算基础 9 查看与卸载包 . 14 查看包中的数据集 . 15 选择镜像 16 R 脚本命令 17 R 启动时都发生了什么? . 17 输出重定向 18 显示当前目录文件 . 19 mode 函数

2、 . 19 在向量中插值 . 20 stack 函数用法 . 20 do.call 使用 list 参数执行函数 . 20 subset 取子集 21 对每一个 List 元素应用一个函数 21 对每一行应用一个函数 . 21 对数据的分组应用一个函数 22 对并行的向量或列表应用一个函数 22 产生可重现的随机数 . 23 为一个均值产生置信区间 . 24 测试样本比例 . 25 正态性检验 26 游程检验 26 比较两个样本的均值 . 27 以非参的方式比较两个样本的位置 27 相关性的显著性检验 . 28 等比例分组检验 . 28 分组均值之间进行两两比较 29 检验两个样本是否来自同一

3、个分布 30 图形函数笔记 . 30 在条形图中添加置信区间 . 32 向直方图中添加密度估计 . 33 数据子集的回归 . 35 在回归公式中使用表达式 . 35 多项式回归 37 发现最佳的次方转换(Box-Cox 程序) 38 画出回归的残差 . 39 诊断线性回归 . 39 识别出影响点 . 39 自相关的残差检验(DurbinWatson 检验) 40 产生预测区间 . 41 执行单因素方差分析 . 41 创建一个交互图 . 42 在各分组的均值间找到差异 43 执行稳健方差分析(KruskalWallis 检验) . 43 使用方差分析比较模型 . 44 汇总行和列 44 找到特殊

4、值的位置 . 45 找出成对的最小值或最大值 45 产生所有几个因子的组合 . 46 按两个字段排序 . 46 展现一个对象的结构 . 46 为你的代码计时 . 47 禁止提示和错误信息 . 47 从列表中获取函数参数 . 48 定义你自己的二元运算符 . 48 执行简单的正交回归 . 49 在你的数据中找出聚集 . 50 预测一个二元值变量(逻辑回归) 50 使用助法计算一个统计量 . 50 表示时间序列数据 . 52 构造一个时间序列的子集 . 52 合并几个时间序列 . 53 计算移动平均 . 53 通过日历周期应用函数 . 53 应用滚动功能 . 54 画出自相关的函数 . 54 时间

5、序列的自相关检验 . 55 画出偏自相关函数 . 55 发现两个时间序列的滞后相关性 55 消除时间序列的趋势 . 55 拟合一个 ARIMA 模型 . 56 移除非显著的 ARIMA 系数 . 59 在 ARIMA 模型上执行诊断 . 61 均值回归检验 . 61 平滑一个时间序列 . 62 在 linux 系统中安装 R 在 Ubuntu 或 Debian 系统中,使用 apt-get 下载并安装 R。运行如下 sudo 代码需要一定 的权限: $ sudo apt-get install r-base 在 Red Hat 或 Fedora 系统中,使用 yum: $ sudo yum i

6、nstall R.i386 除了基础包以外, 我还建议安装文档包。 比如在我的 Ubuntu 机器中, 我安装了 r-base-html (因为我喜欢浏览文档链接),还安装了 r-doc-html,安装命令如下: $ sudo apt-get install r-base-html r-doc-html 获得帮助 使用 help 命令查看该函数的文档: help(functionname) 使用 args 函数,获取函数参数的简要说明: args(functionname) 使用 example 函数来查看该函数的例子: example(functionname) 如果你想知道更多关于 mea

7、n 函数。像这样使用 help 函数: help(mean) 这会打开一个函数文档的窗口或者在你的控制台呈现文档, 要依赖你的系统平台。 使用 help 命令的快捷方式,只需要敲入?后面跟着函数名: ?mean 使用 help.search 函数,在你的电脑中查找 R 文档: help.search(“pattern“) 一个典型的 patter 是一个函数名或者关键词。注意它应该加上引号。 为了方便起见,你也可以通过两个问题调用一个查找(在这种情况下,不需要加引号): ?pattern 使用 help 函数,并指定一个包名(而不是函数名): help(package=“packagename

8、“) 使用 vignette 函数,你可以查看你电脑中的所有小品文(看了一下,可以找到相关的 PDF 文档)列表: vignette() 通过加入包名,你可以查看某个包的小品文: vignette(package=“packagename“) 每个小品文都有一个名字,可以使用名字查看该小品文: vignette(“vignettename“) 在 R 中,使用 RsiteSearch 函数,通过关键词或短语来查找: RSiteSearch(“key phrase“) 在你的浏览器中,尝试使用这些站点来查找: http:/rseek.org 这是一个谷歌自定义搜索,它专注于 R-specific

9、 网站。 http:/ StackOverflow 是一个可查找问题和答案,面向编程主题,比如数据结构、编码、图形。 http:/ Stack Exchange 在统计分析领域也是一个可查找问题及答案的站点,但是它比面向编程而 言,更面向统计。 有时,你仅仅有一个通用的兴趣-比如贝叶斯分析,计量经济学,最优化,或者图形。CRAN 包含一套任务视图页面描述了可能有用的包。 一个任务视图是一个伟大的起点, 因了你对什 么是可用的有了大概的理解。你可以在http:/cran.r -project.org/web/views/查看任务列表或按解决方案中所描述的那样查找它们。假如你碰 巧知道了一个有用包

10、 say 的名字,通过在线提醒注意到它。一个完整的,按字母顺序整理的 包的列表在http:/cran.r-project.org/web/packages/是可用的,可通过相应链接查看汇 总页面。 另请参阅 你 可 以 下 载 并 安 装sos包 , 它 提 供 了 强 有 力 的 其 它 查 找 包 的 方 式 , 在 http:/cran.r-project.org/web/packages/sos/vignettes/sos.pdf 看该小品文。 打印函数 cat 函数是 print 的另一种方法,它让你组合多个对象到一个连续的输出中: cat(“The zero occurs at“,

11、 2*pi, “radians.“, “n“) The zero occurs at 6.283185 radians. 注意 cat 在对象间默认地旋转了一个空格符。你应该提供一个换行符(n)来结束本行。 cat 函数也能打印简单的向量: fib cat(“The first few Fibonacci numbers are:“, fib, “.n“) The first few Fibonacci numbers are: 0 1 1 2 3 5 8 13 21 34 . 然而, 一个严格的限定条件是, 它不能打印复合数据结构, 如矩阵和列表。 如果非要这么做, 则会产生一个错误: ca

12、t(list(“a“,“b“,“c“) Error in cat(list(.), file, sep, fill, labels, append) : argument 1 (type list) cannot be handled by cat 类型转换 这些模式是不兼容的。为了从它们中产生向量,R 将 3.1415 转换为字符模式,这样它就能 和”foo”兼容了: c(3.1415, “foo“) 1 “3.1415“foo“ mode(c(3.1415, “foo“) 1 “character“ R 向量、索引及相关运算基础 cor 和 cov 函数可以分别计算两个向量间的相关性和协方

13、差: x y cor(x,y) 1 0.9068053 cov(x,y) 1 11.49988 所有这些函数对值都很挑剔。 甚至向量中的一个 NA 值都会引起这些函数中的任何一个返回 NA 或者甚至会生一个隐藏的错误而终止算法: x mean(x) 1 NA sd(x) 1 NA R 像这样小心,还真让人受不了,但它这样做是正确的。你应该仔细考虑你的情形。NA 在 你的数据中是无效数据吗?如果是,R 这样做是对的。如果不是,你可以通过设置 na.rm=TRUE 来重写该行为,它将会告诉 R 忽略掉 NA 值: x mean(x, na.rm=TRUE) 1 1.4 sd(x, na.rm=TR

14、UE) 1 1.140175 mean(dframe) small medium big 1.245040 9.560325 99.946003 sd(dframe) small medium big 0.5844025 0.9920281 0.8135498 var(dframe) small medium big small 0.34152627 -0.21516416 -0.04005275 medium -0.21516416 0.98411974 -0.09253855 big -0.04005275 -0.09253855 0.66186326 同样地,如果 x 是一个数据框或者一

15、个矩阵,那么 cor(x)将会返回相关性矩阵,cor(x)将会 返回协方差矩阵: cor(dframe) small medium big small 1.00000000 -0.3711367 -0.08424345 medium -0.37113670 1.0000000 -0.11466070 big -0.08424345 -0.1146607 1.00000000 cov(dframe) small medium big small 0.34152627 -0.21516416 -0.04005275 medium -0.21516416 0.98411974 -0.09253855 big -0.04005275 -0.09253855 0.66186326 对于一个增量不是 1 的序列,使用 seq 函数: seq(from=1, to=5, by=2) 1 1 3 5 使用 rep 函数创建一系列重复值: rep(1, times=5) 1 1 1 1 1 1 另一种方法,你可以对输出序列指定一个长度,然后 R 会计算必要的增量: seq(from=0, to=20, length.out=5) 1 0 5 10 15 20 seq(from=0, to=100, length.out=5) 1 0 25 50 75 100 fib-1 #忽

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号