在 R 中矩阵的 x、y 坐标处分配向量
Posted
技术标签:
【中文标题】在 R 中矩阵的 x、y 坐标处分配向量【英文标题】:assign vector at x, y coordinates of a matrix in R 【发布时间】: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
这样简单的东西,不要忘记说明你的期望。在准备这样的例子时,您实际上可能会解决您的问题!
【参考方案1】:
我已经解决了这个问题。问题是变量“Nonses”是一个列表,因此不能分配给数组。在matlab中一切都是矩阵,所以没有朝那个方向思考。非常感谢您的回复。
【讨论】:
以上是关于在 R 中矩阵的 x、y 坐标处分配向量的主要内容,如果未能解决你的问题,请参考以下文章