我的矩阵A
包含i
,j
,z
个值(1:72
,1:205
,z
) 。我想用数据框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
值。
任何帮助将不胜感激,谢谢!
答案 0 :(得分:1)
A[as.matrix(B[1:2])] <- B[[3]]
您可以使用B
的前两列作为A
的数字索引。