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
做同样的事情呢?是的。在这种情况下更聪明。认为“真实”函数可能更复杂。