r-如何在不覆盖的情况下将结果附加到向量中?(循环)



我是R的新手,我正试图在Rstudio中编程Pascal的三角形。我想用结果创建一个11X11矩阵。这是我的代码:

M<-c()
for (n in 0:10) {
for (k in 0:10) {
result <- choose(n,k)
list_results <- append(result,M)
}
}
Pascal <- matrix(list_results, ncol=11)

该代码创建了一个充满1的11x11矩阵,因为循环只保存最后一个结果(1(,并覆盖之前计算的结果。我该如何解决这个问题?我不知道将结果添加到我在第一行创建的向量中的正确命令是什么:append、rbind或paste?

谢谢。

您需要更像的东西

Pascal <- matrix(nrow=11, ncol=11)
for (n in 0:10) {
for (k in 0:10) {
result <- choose(n,k)
Pascal[(k+1), (n+1)] <- result
}
}

或者,按照你最初的策略,你本可以做到:

M<- NULL
for (n in 0:10) {
for (k in 0:10) {
result <- choose(n,k)
M <- c(M, result)
}
}
Pascal <- matrix(M, ncol=11)

最新更新