小编Jac*_*ner的帖子

图标题,使用knitr和markdown到html的引用

我正在编写一个Rmd文件,由knitr处理成HTML.它包含一些生成图形的R块,它们以HTML格式存储为数据URI.

1)如何为这样的图像添加标题?我想要一个类似"图3:等等等等"的标题,其中"3"是自动生成的.

2)我以后如何参考这个图像,即"正如你在图3中看到的那样,等等".

markdown r knitr r-markdown

37
推荐指数
4
解决办法
2万
查看次数

R中的快速子集

我有一个大小为30000 x 50的数据帧数据.我还有一个单独的列表,其中包含来自此数据帧的行分组,例如,

rows <- list(c("34", "36", "39"), c("45", "46"))
Run Code Online (Sandbox Code Playgroud)

这表示具有rownames(不是数字行indeces,但是字符rownames(dat))"34","36","39"的数据帧行构成一个分组,而"45","46"构成另一个分组.

现在我想将数据框中的分组拉出到并行列表中,但我的代码(下面)非常非常慢.我怎样才能加快速度?

> system.time(lapply(rows, function(r) {dat[r, ]}))
   user  system elapsed 
 246.09    0.01  247.23 
Run Code Online (Sandbox Code Playgroud)

这是在一台非常快的计算机上,R 2.14.1 x64.

r dataframe

7
推荐指数
2
解决办法
7571
查看次数

数组索引保留结构

我需要一个在R中子集多维数组的函数; 在我调用函数之前,我不知道该维度的哪个维度或长度.

# subset a 3-d array; leave dims 1 and 2, but start 3rd dim at its 11th value
mydim <- dim(myarr)
myarr[, , 11:mydim[3]]

# subset a 4-d array; leave dims 1, 3 and 4, but start 2rd dim at its 8th value
mydim <- dim(myarr)
myarr[, 8:mydim[2], , ]
Run Code Online (Sandbox Code Playgroud)

我总是需要精确地沿着一个维度子集,该子集总是比1.我还需要保持阵列结构的其他一些值来启动,所以矩阵索引到数组看起来并不吸引人.提前致谢.

r multidimensional-array

5
推荐指数
1
解决办法
117
查看次数

训练集上的predict.glmer在有和没有newdata的情况下有所不同

这可能更像是一个错误报告而不是问题,但是:为什么明确使用newdata参数来预测使用与训练数据相同的数据集有时会产生不同的预测,而不是省略newdata参数并明确使用训练数据集?

library(lme4)
packageVersion("lme4") # 1.1.8
m1 <- glmer(myformula, data=X, family="binomial")
p1 <- predict(m1, type="response")
p2 <- predict(m1, type="response", newdata=X)
all(p1==p2) # FALSE
Run Code Online (Sandbox Code Playgroud)

这不仅仅是一个舍入误差.我看到cor(p1,p2)回归0.8.

这似乎与具有斜坡的模型隔离开来.在下图中,隐式表示predict(..., type="response")没有newdata和显式均值predict(..., type="response", newdata=X),其中X与训练相同.模型1和其他模型之间的唯一区别是模型1仅包含(随机)截距,而其他模型具有随机截距和随机斜率.

在此输入图像描述

r lme4

5
推荐指数
1
解决办法
186
查看次数

在没有加载包的情况下,在R中调用函数

我想do.call从包中导出(导出)函数.函数名称是一个字符串"lme4::lmer".

# Works, but not what I need
library(lme4)
do.call("lmer", ...)
# Also works, but not what I need
lme4::lmer(...)
# Doesn't work:
do.call("lme4::lmer", ...)
Run Code Online (Sandbox Code Playgroud)

r do.call

2
推荐指数
1
解决办法
723
查看次数