将值随机添加到矩阵
问题描述:
如何随机将值添加到矩阵?将值随机添加到矩阵
说我有:
mat <- matrix(0, 10, 10)
v = 5
我怎么能随意v一次添加到垫,2个位置?输出应该是这样的一个迭代后:
out
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] 0 0 0 0 0 0 0 0 0 0
[2,] 5 0 0 0 0 0 0 0 0 0
[3,] 0 0 0 0 0 0 0 0 0 0
[4,] 0 0 0 0 5 0 0 0 0 0
[5,] 0 0 0 0 0 0 0 0 0 0
[6,] 0 0 0 0 0 0 0 0 0 0
[7,] 0 0 0 0 0 0 0 0 0 0
[8,] 0 0 0 0 0 0 0 0 0 0
[9,] 0 0 0 0 0 0 0 0 0 0
[10,] 0 0 0 0 0 0 0 0 0 0
另一次迭代后,垫应该有2个位置在“V”填充值
答
你可以使用?sample
随机索引你的矩阵:
idx <- sample(length(mat), size=2)
mat[idx] <- mat[idx] + v
谢谢,这个工程很好 – user3067923