R迭代矩阵
如何有效地迭代矩阵?我必须能够得到行和列的名称 我的当前代码(可以正常工作):R迭代矩阵,r,matrix,R,Matrix,如何有效地迭代矩阵?我必须能够得到行和列的名称 我的当前代码(可以正常工作): m您可以在这里使用mapply mapply(function(v, r, c) {paste(v, r, c)}, m, rownames(m)[row(m)], colnames(m)[col(m)]) 但这是否是一个好主意实际上取决于您认为需要显式迭代矩阵中的值的原因。有许多函数不需要显式地编写循环就可以工作。您可以在这里使用mapply mapply(function(v, r, c) {paste
m您可以在这里使用mapply
mapply(function(v, r, c) {paste(v, r, c)},
m, rownames(m)[row(m)], colnames(m)[col(m)])
但这是否是一个好主意实际上取决于您认为需要显式迭代矩阵中的值的原因。有许多函数不需要显式地编写循环就可以工作。您可以在这里使用mapply
mapply(function(v, r, c) {paste(v, r, c)},
m, rownames(m)[row(m)], colnames(m)[col(m)])
但这是否是一个好主意实际上取决于您认为需要显式迭代矩阵中的值的原因。有许多函数可以在不必显式编写循环的情况下工作。完全矢量化的选项是使用外部
创建索引,然后粘贴到其余部分,并将结果分配回矩阵结构:
m完全矢量化的选项是使用外部
制作索引,然后在其余部分粘贴并将结果分配回矩阵结构:
m为什么在调用paste(m,rownames(m)[row(m)],colnames(m)[col(m)])时使用mapply
做同样的事情?是的。在这种情况下更聪明。认为“real”函数可能更复杂。为什么在调用paste(m,rownames(m)[row(m)],colnames(m)[col(m)])时使用mappy
做同样的事情呢?是的。在这种情况下更聪明。认为“真实”函数可能更复杂。