【发布时间】:2011-04-03 05:27:13
【问题描述】:
我正在使用 R,并且我有两个 data.frames,A 和 B。它们都有 6 行,但A 有 25000 列(基因),B 有 30 列。我想应用一个带有两个参数f(x,y) 的函数,其中x 是A 的每一列,y 是B 的每一列。到目前为止,它看起来像这样:
i = 1
for (x in A){
j = 1
for (y in B){
out[i,j] <- f(x,y)
j = j + 1
}
i = i + 1
}
我有两个问题:在我的 Python 编程中,我认为跟踪这样的计数器很麻烦,在我的 R 编程中,我对 for 循环感到紧张。但是,我不太明白如何将apply(或者即使我应该应用apply)应用于这个问题,并希望有人能启发我。我现在需要将f() 视为原子(实际上是cor.test())。
【问题讨论】:
-
取决于
f,这听起来类似于内积。我知道使用外积可以指定要使用的函数,但不知道如何为内积执行此操作。 -
我是一个非常新的 R 用户,所以我不愿提出任何建议,但我使用 plyr 包进行数据操作取得了很好的成功。 had.co.nz/plyr