相关疑难解决方法(0)

如何将变量传递给ddply中的自定义函数?

请考虑以下数据:

d = data.frame(
    experiment = as.factor(c("foo", "foo", "foo", "bar", "bar")),
    si = runif(5),
    ti = runif(5)
)
Run Code Online (Sandbox Code Playgroud)

我想为进行相关测试si,并ti为每个experiment因子水平.所以我以为我会跑:

ddply(d, .(experiment), cor.test)
Run Code Online (Sandbox Code Playgroud)

但我怎么传递的价值观siticor.test通话?我试过这个:

> ddply(d, .(experiment), cor.test, x = si, y = ti)
Error in .fun(piece, ...) : object 'si' not found
> ddply(d, .(experiment), cor.test, si, ti)
Error in match.arg(alternative) : 
  'arg' must be NULL or a character vector
Run Code Online (Sandbox Code Playgroud)

有什么明显我想念的吗?该plyr文件不包括给我的例子.我看到的大多数命令只涉及summarize函数调用,但是我常常做的summarize事情不起作用,如上所示.

r plyr

3
推荐指数
1
解决办法
6442
查看次数

标签 统计

plyr ×1

r ×1