我有两个命名向量A和B。在删除A和B中都为0的条目后,我必须计算它们之间的相关性。也就是说,如果对于某个名称'Sample1',A和B中的值都为0,那么我想从相关性计算中删除该条目。
有没有容易做到这一点的方法?我使用cor(A, B)来计算相关性。
发布于 2016-05-24 00:51:48
这个怎么样?
# construct vectors
set.seed(1234)
A <- sample(0:10, 100, replace=T)
B <- sample(0:10, 100, replace=T)
# remove elements of A and B where both are 0
cor(A[A != 0 | B != 0], B[A !=0 | B != 0])或者,对我来说更有条理
cor(A[!(A == 0 & B == 0)], B[!(A ==0 & B == 0)])发布于 2016-05-24 00:57:27
如果您的数据位于data.frame df中,则可以使用subset函数:
df <- data.frame(A, B)
with(subset(df, !(A == 0 & B == 0)), cor(A,B))发布于 2016-05-24 13:28:07
另一种选择是使用rowSums创建逻辑索引并执行cor
with(df[!!rowSums(df),], cor(A,B))https://stackoverflow.com/questions/37396403
复制相似问题