在升级到R-2.14之前,我想借此机会合理化已安装软件包的文件夹结构.
目前我使用R默认值,即所有新安装的软件包都转到R_LIBS_USER.但是,我真的区分了两类包:
plyr,data.table等等.由于install.packages提供了一个指定lib参数的选项,这显然是可能的.
是否有一种简单的方法来管理包位置,例如通过在.RProfile或中创建一些合理的设置/包装函数RProfile.Site?
我在CRAN上有一个包,我想添加一个ChangeLogfor,但我无法在任何地方找到有关如何执行此操作的信息.
我查看了CRAN提供的"Writing R Extensions"文档,但它只提到了ChangeLogs并没有给出关于如何创建一个的指示(我可以找到).
我注意到从CRAN上的其他软件包下载tarball(例如seacarb)他们的ChangeLogs是Unix可执行文件(我在Mac上),所以这不太有用.
我想这是一个常见的问题,但谷歌搜索"changelog R package"只是为真正受欢迎的软件包带来了ChangeLogs ......
我一直在使用\begin{figure} ... \end{figure}整个LaTeX文档,但默认样式很难看; 即,这些数字都是左对齐的.有没有办法重新定义"数字"环境,所以它会自动插入一些像这样的居中命令?:
\begin{figure} \begin{center}
\end{center} \end{figure}
Run Code Online (Sandbox Code Playgroud)
当然,我可以\newenvironment用来定义一个"cfigure"环境,但那是不可取的.我不想通过将所有"数字"改为"cfigures"(然后我意识到我希望所有数字都是正确对齐的,并且必须将它们全部重命名为"rfigures").
我可以使用\renewenvironment,但后来我必须深入研究LaTeX源代码,找出最初定义为"数字"环境的复制/粘贴内容.
我几乎在这篇博文中找到了我想要的东西,但是那里的例子是一个命令,而不是一个环境.
我是R初学者.浏览R文档时,我偶然发现了这句话?is.vector:
"如果mode ="any",is.vector可能会为原子模式,列表和表达式返回TRUE."
我只是好奇 - 为什么?我读过的所有文档都指出列表和向量是两种不同的数据类型.是否有一些更深入的R数据类型概念我没有得到?
在R中,人们有时会看到人们提到财富.例如:
fortune(108)
Run Code Online (Sandbox Code Playgroud)
这是什么意思?这起源于哪里?我在哪里可以获得代码?
编辑. 眼尖的读者会注意到这个问题标5,000th有[r]标签的问题.原谅轻浮,但这样一个里程碑应该用一点幽默来标记.为了获得额外的乐趣,您可以使用自己喜欢的fortunecookie 提供答案.
使用geom_text打印的文本不是很清楚.我怎样才能说得更清楚?
data = data.frame(rnorm(1000))
colnames(data) = "numOfX"
m <- ggplot(data, aes(x=numOfX))
m + geom_histogram(colour = "blue", fill = "white", binwidth = 0.5) +
annotate("segment", x=10,xend=10,y=20,yend=0,arrow=arrow(), color="blue") +
geom_text(aes(10, 30, label="Observed \n value"), color = "blue")
Run Code Online (Sandbox Code Playgroud)

我发现自己处于完成大量分析的位置,现在需要以稍微不同的输入假设重复分析.
在这种情况下,分析涉及聚类分析,绘制几个图,以及导出聚类ID和其他感兴趣的变量.关键是它是一个广泛的分析,需要重复和比较两次.
我考虑过:
source.这可行,但似乎非常丑陋和次优.分析的目的是用一组对象(在列表中或在单独的输出文件中)完成,我可以进一步分析差异.
处理这类问题的好策略是什么?
我正在尝试编写一些包装器函数来减少代码重复data.table.
这是一个使用的例子mtcars.首先,设置一些数据:
library(data.table)
data(mtcars)
mtcars$car <- factor(gsub("(.*?) .*", "\\1", rownames(mtcars)), ordered=TRUE)
mtcars <- data.table(mtcars)
Run Code Online (Sandbox Code Playgroud)
现在,我通常会写这个以获得按组计算的总结.在这种情况下,我分组car:
mtcars[, list(Total=length(mpg)), by="car"][order(car)]
car Total
AMC 1
Cadillac 1
Camaro 1
...
Toyota 2
Valiant 1
Volvo 1
Run Code Online (Sandbox Code Playgroud)
复杂的是,因为参数i和j在框架中进行评估,如果你想传入变量data.table,就必须使用eval(...)它们:
这有效:
group <- "car"
mtcars[, list(Total=length(mpg)), by=eval(group)]
Run Code Online (Sandbox Code Playgroud)
但现在我想通过相同的分组变量来排序结果.我无法得到以下任何变体给我正确的结果.注意我总是得到一行结果,而不是有序集.
mtcars[, list(Total=length(mpg)), by=eval(group)][order(group)]
car Total
Mazda 2
Run Code Online (Sandbox Code Playgroud)
我知道为什么:它是因为group是在而parent.frame不是框架中进行评估data.table.
我怎样才能group在上下文中进行评估data.table?
更一般地说,我如何在函数内部使用它?我需要以下函数来给我所有结果,而不仅仅是第一行数据:
tableOrder <- function(x, group){ …Run Code Online (Sandbox Code Playgroud) 我和一位同事正在分享一些模型的不同项目.所以,我们通过git子模块共享模型.
此外,我们希望能够共享迁移:
通过这种方式,我的同事的迁移将在db/migrate/other_db我的项目的文件夹中.
如何配置rails迁移以在此额外文件夹中运行迁移?
r ×8
ggplot2 ×2
cran ×1
data.table ×1
directory ×1
installation ×1
latex ×1
migration ×1
package ×1
ruby ×1