【发布时间】:2014-01-24 10:22:55
【问题描述】:
我有一个表单的数据框:
my.df = data.frame(ID=c(1,2,3,4,5,6,7), STRAND=c('+','+','+','-','+','-','+'), COLLAPSE=c(0,0,1,0,1,0,0))
和另一个由 nrow(my.df) 组成的维度矩阵 nrow(mydf)。这是一个相关矩阵,但这对于讨论并不重要。
例如:
mat = matrix(rnorm(n=nrow(my.df)*nrow(my.df),mean=1,sd=1), nrow = nrow(my.df), ncol=nrow(my.df))
问题是如何仅从矩阵 mat 中检索上三角元素,使得 my.df 的值为 COLLAPSE == 0,并且属于同一链?
在这个特定示例中,我有兴趣从向量中的矩阵 mat 中检索以下条目:
mat[1,2]
mat[1,7]
mat[2,7]
mat[4,6]
逻辑如下,1,2都是同一个链,它的collapse值等于0所以应该被检索,3永远不会和任何其他行合并,因为它的collapse值= 1, 1 ,3 属于同一条链,并且折叠值 = 0,因此也应该检索,...
我可以编写一个 for 循环,但我正在寻找一种更奇妙的方法来实现这样的结果......
【问题讨论】:
标签: r