我是R的新手。我想定义一个截止范围,但无法对其进行编码。截止点与向量中的数据匹配,以查看它是否在a
和b
之间。例如a<cutoff<b
。
我尝试了以下代码:
Heat_MAP_Z_900 = matrix(data=0,nrow=ncol(Z),ncol=ncol(D))
cut_off>300 && cut_off<900
for(i in 1:ncol(Z)) {
for(j in 1:ncol(D)) {
Heat_MAP_Z_900[i,j] = sum(Z[i,]*(D[j,]<cut_off))
}
}
代码cut_off>300 && cut_off<900
但它不起作用。这样做的正确方法是什么?
答案 0 :(得分:0)
根据您提供的示例代码,您似乎正在尝试将矩阵Z乘以二进制值矩阵,以指示D中的每个元素是否在范围内(300,900)。通常,您应该使用%*%
运算符来乘以矩阵,而不是单独获取每行和每列的点积。在您的情况下,您需要:
Heat_MAP_Z_900 <- Z %*% (D > 300 & D < 900)