【发布时间】:2020-02-11 15:08:16
【问题描述】:
我正在从 MATLAB 迁移到 R,并且有一个关于如何在矩阵的 x、y 坐标处分配向量的问题。为此,我尝试定义一个数组,然后读取每个像素。在处理矩阵后,我坚持将值重新分配给矩阵。以下是我的代码:
GR_anom<-array(NaN,dim=c(180,360,100))
for (i in 1:180)) {
for (j in 1:360) {
GR_vec<-as.data.frame(GR[i,j,,drop=TRUE])
Nonses= seasonaltrend(GR_vec,2002,2017)
GR_anom[i,j,] <- Nonses[1]
}
}
line(GR_anom[i,j,] <- Nonses[1]) 是用 MATLAB 格式编写的,但在 R 中它的工作方式似乎有所不同。卡在这里很久了,能推荐一下吗?
【问题讨论】:
-
如果没有
GR的样本,很难判断发生了什么。至少,GR[i,j,,drop = TRUE]似乎不太可能是一个数据框。但是它应该是数组,矩阵还是向量......无法根据您提供的信息来判断。Nonses是什么样的?seasonaltrend不是内置的 R 函数,所以我不知道。如果是列表、数据框或矩阵,则[1]可能需要为[[1]]或[1, ]或[, 1],或其他。 -
您的问题是关于矩阵分配的。你可以做一个没有 GR、
seasonaltrend()、更低维度等的更简单的例子。考虑像mat <- [...] ; vec <- [...] ; mat[1,1] <- vec这样简单的东西,不要忘记说明你的期望。在准备这样的例子时,您实际上可能会解决您的问题!
标签: r matrix variable-assignment