用特定坐标的另一个矩阵的值替换矩阵的一部分

时间:2014-02-04 14:20:33

标签: r matrix replace dataframe

我的矩阵A包含ijz个值(1:721:205z) 。我想用数据框z的{​​{1}}值替换矩阵A的{​​{1}}值,并将其他非z值替换在0。

矩阵B

NA

数据框A

     1   2   3   4   5   6   7 ... 205
1  999 999   0   0   0   0 1.7       0
2  999   0 0.3 1.2 4.3 2.1   0     3.8
...
72 999 999 999 999 999   0   0     2.5

我想拥有什么:

B

我知道如何用 i j z 6 1 1 3 2 1 替换另一个特定号码,但这里我的第二个数据集是一个3列数据框,只包含某些点的 1 2 3 4 5 6 7 ... 205 1 999 999 0 0 0 1 0 0 2 999 0 1 0 0 0 0 0 ... 72 999 999 999 999 999 0 0 0 A[A== 0]<-B值。

任何帮助将不胜感激,谢谢!

1 个答案:

答案 0 :(得分:1)

A[as.matrix(B[1:2])] <- B[[3]]

您可以使用B的前两列作为A的数字索引。

相关问题