使用if-else以多个for循环保存输出
使用if-else以多个for循环保存输出,r,for-loop,if-statement,vector,sum,R,For Loop,If Statement,Vector,Sum,请看上面的方程式。正如您所看到的0您可以通过使用矩阵乘法以更简单的方式编写它 假设您的xu k和xu i是向量,您可以: X_k <- as.matrix(X_k) X_i <- as.matrix(X_i) difference <- (X_k - X_i) output <- (n - j + 1) * (t(difference) %*% difference) X_k一个问题是你在外面循环k。k的一次迭代将遍历i和j的所有可能值。我认为,另一个问题是,输出应该产
请看上面的方程式。正如您所看到的
0您可以通过使用矩阵乘法以更简单的方式编写它
假设您的xu k
和xu i
是向量,您可以:
X_k <- as.matrix(X_k)
X_i <- as.matrix(X_i)
difference <- (X_k - X_i)
output <- (n - j + 1) * (t(difference) %*% difference)
X_k一个问题是你在外面循环k
。k
的一次迭代将遍历i
和j
的所有可能值。我认为,另一个问题是,输出应该产生2个以上的值。你得到了(j=1,i=0),(j=2,i=0)和(j=2,i=1)。你想把这三个都存起来还是把其中两个加起来?如果您想保存所有这些,最好填充矩阵的下(或上)三角形,其中行对应于i
,列对应于j
,反之亦然。@DaveArmstrong,我想保存所有输出。我应该说value1[I,j]
?代码在注释中不起作用,读者可能会错过注释和/或通过StackExchange界面隐藏注释。请回答您的问题,并替换或扩充当前代码块。谢谢@伊万斯,我刚刚更新了。谢谢。@r2evans,谢谢,如果。。。else
。
X_k <- as.matrix(X_k)
X_i <- as.matrix(X_i)
difference <- (X_k - X_i)
output <- (n - j + 1) * (t(difference) %*% difference)