循环比较R

时间:2019-03-30 01:28:32

标签: r loops for-loop if-statement correlation

当循环遍历部分填充的相关矩阵(已预先过滤)时,我想比较循环中两个变量的方差,并将变量的方差最大保留在向量中。

这是相关矩阵的捕获:

enter image description here

已在单独的数据帧(var)中计算了方差,方差的顺序与相关矩阵中变量的顺序一致。

enter image description here

无效的代码段如下:

vec <- c()

for (i in ncol(mcor)) {
  for (j in nrow(mcor)) {
    if (is.na(mcor[i,j])) {
      j = j+1      
    } else {
      if (var[j,2] > var[i,2]) {
        vec <- c(vec, var[j,2])
      } else {
        vec <- c(vec, var[i,2])
      }
    }
  }
}

1 个答案:

答案 0 :(得分:0)

您的循环定义不正确。尝试

for (i in 1:ncol(mcor)) {
  for (j in 1:nrow(mcor)) {
...