【发布时间】:2020-05-22 13:06:22
【问题描述】:
我正在尝试弄清楚如何迭代加载矩阵(这是我无法在此处重现的更大函数的一部分)。
假设我创建了一个矩阵:
m <- matrix(c(1:9), nrow = 3, ncol = 3)
m
这个矩阵可以命名为“m”、“x”或其他任何名称。然后,我需要在函数中迭代加载矩阵:
if (interactive() ) { mat <-
readline("Your matrix, please: ")
}
到目前为止,函数“知道”矩阵的名称,因为mat 返回[1] "m",并且是ls() 中列出的对象。但是当我尝试获取矩阵值时,例如通过x <- get(mat) 我不断收到错误
get(mat) 中的错误:未使用的参数 (mat)
谁能告诉我我在这里做错了什么?
【问题讨论】:
-
可能想从这里开始,了解如何创建一个空矩阵,它还会为您提供一些关于如何完成循环的线索。 stackoverflow.com/questions/21585721/…,还有
get不会做你认为的那样。 -
在 R 中迭代地加载几乎任何东西可能是错误的处理方式。在这种情况下,为什么不只是:
x = mat?