0

我想计算两个数据集与另一个数据的条件之间的相关性。我想要 P 的前 50%,这对应于 P 的值大于中位数。

      P=c(1,6,5,6,2,8,5)
      sf=c(1,2,6,6,4,5,5)
      Pf=c(1,6,5,8,4,8,5)

正常校正:

     cor(sf,Pf)

有条件:

      cor(sf[P > median(P)], Pf[P > median(P)])

这工作得很好。我怎样才能对我的真实数据应用同样的东西?

  with condition(using dir3(p is dir3 here)):

              ???

提前致谢

4

1 回答 1

1

完全相同的代码应该可以工作:

function(x){cor(x[,1],x[,2])}

可以写成

function(x) { 
  P  <- x[,3]
  sf <- x[,1]
  Pf <- x[,2]
  cor(sf, Pf)
}

变成

function(x) { 
  P  <- x[,3]
  sf <- x[,1]
  Pf <- x[,2]
  i <- P > median(P)
  cor(sf[i], Pf[i])
}
于 2013-03-26T11:01:21.173 回答