split-apply-combine纸张代码出错 - 如何解决?

时间:2013-07-03 10:33:26

标签: r plyr

为了尝试掌握R中的数据操作,我开始在split-apply-combine上阅读Hadley的论文。

我在第3页,试图通过代码来理解它。不幸的是,代码是错误的,我的复制是忠实的(我已经完成了c& p和handtyped)。因为我正在努力学习这些东西而且我刚开始时我无法确定它有什么问题。我在R2.5和R3.0上都尝试过它。

library("MASS")
library("plyr")
data(ozone)
one<-ozone[1,1,]
month<-ordered(rep(1:12,length=72))
model<-rlm(one ~ month - 1)
deseas<-resid(model)
deseasf<-function(value) {rlm(value ~ month - 1)}
models<-aaply(ozone,1:2,deseasf)
deseas<-aaply(models,1:2,resid)

模型将错误与Error: Results must have one or more dimensions.

对齐

有人可以告诉我它是否对他们有效,或者如果没有,需要修复/修改的内容以及为什么





PS - 无法在http://plyr.had.co.nz/上查看勘误表,因为我的工作代理目前阻止该网站!

2 个答案:

答案 0 :(得分:5)

应该是

models <- alply(ozone, 1:2, deseasf)
deseas <- ldply(models, resid)

答案 1 :(得分:0)

事实证明这是aaply中的一个错误,Hadley说他很快会调查它:

https://groups.google.com/forum/#!topic/manipulatr/kg2wDU96mGM