我有一个R脚本与不同计算机上的多个用户共享。 其中一行包含install.packages("xtable")命令。 问题是每次有人运行脚本时,R花费大量的时间显然重新安装包(实际上它需要一些时间,因为真正的情况下有几个包的向量)。 我怎样才能首先检查包是否安装,然后只运行install.packages()为不是?
学习如何编写用于R的C代码的最佳资源是什么? 我知道R扩展的系统和外语接口部分,但我觉得很难。 用于编写与R一起使用的C代码的好资源(在线和离线)是什么? 为了澄清,我不想学习如何编写C代码,我想学习如何更好地整合R和C.例如,如何将C整数向量转换为R整数向量(反之亦然)或从C标量到R向量?
我刚开始学习KnitR和使用Markdown生成R文档和报告。 这对于我日常工作中的很多日常报道来说是非常完美的。 然而,我没有看到的一件事是使用Markdown格式打印数据框架和表格的简单方法(有点像xtable ,但是使用Markdown而不是LaTeX或HTML)。 我知道我可以embedded从xtable的HTML输出,但我想知道是否有任何基于Markdown的解决scheme?
这是关于data.table连接语法的一个哲学问题。 我发现data.tables越来越多的用途,但仍然在学习… data.tables的连接格式X[Y]非常简洁,方便和高效,但据我所知,它只支持内连接和右外连接。 要获得一个左或全外连接,我需要使用merge : X[Y, nomatch = NA] – Y中的所有行 – 右外连接(默认) X[Y, nomatch = 0] – 只有在X和Y都有匹配的行 – 内连接 merge(X, Y, all = TRUE) – 来自X和Y的所有行 – 完全外连接 merge(X, Y, all.x = TRUE) – X中的所有行 – 左外连接 在我看来,如果X[Y]连接格式支持所有4种types的连接,这将是方便的。 是否有一个原因只支持两种types的连接? 对于我来说, nomatch = 0和nomatch = NA参数值对于正在执行的操作并不是很直观。 对我来说,理解和记住merge语法更为容易: all = TRUE , all.x = TRUE […]
有没有人有R的例外/教程exception处理? 官方文件非常简洁。
在R中用matrix: one two three four [1,] 1 6 11 16 [2,] 2 7 12 17 [3,] 3 8 11 18 [4,] 4 9 11 19 [5,] 5 10 15 20 我想提取行的列为3 = 11的子matrix。即: one two three four [1,] 1 6 11 16 [3,] 3 8 11 18 [4,] 4 9 11 19 我想这样做没有循环。 我是R新手,所以这可能是非常明显的,但文档往往是简单的。
我正在通过data.table文档,也注意到从这里的一些对话, rbindlist应该比rbind更好。 我想知道为什么rbindlist比rbind更好,在哪种情况下rbindlist真的超越rbind ? 在内存使用方面有没有优势?
我想在R中逐行构build一个数据框。我已经完成了一些search,所有我想出的build议是创build一个空列表,保留一个列表索引标量,然后每次添加到列表一个单行数据框,并提前一个列表索引。 最后,列表中的do.call(rbind,) 。 虽然这个工作,似乎非常繁琐。 没有一个更简单的方法来实现相同的目标? 显然,我指的是我不能使用某些apply函数的情况,并且显式地需要逐行创builddataframe。 至less,有没有一种方法可以push入列表的最后,而不是明确地跟踪最后使用的索引?
有没有办法从文件完整path(文件path的一部分)提取文件名没有操纵string的麻烦? Java中的等价物将是: File f = new File ("C:/some_dir/a") f.getName() //output a f.getFullAbsolutePath() //output c:/some_dir/a
如何在R中“抛出”一个错误? 我有一个函数,它需要一个数据框和一些列名,并与他们做的东西。 如果列不存在,我希望函数停止并根据它停止所有的function。 我已经看过recover和browse和traceback但是,好吧,他们似乎是接近,但不是我所期待的。