Is it possible to filter two same size matrix with probability?

So for example, lets say m1 = [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

and m2 is [[3, 4, 2], [5, 1, 2], [0, 4, 2]]

and I want to combine these two matrix with a probability say 0.3, so element in m2

has a probability of 0.3 to be in the output matrix m3. an example for output would be

[[3, 2, 3], [4, 5, 2], [7, 4, 9]]

is this possible with pytorch?

Hi,

Try the following solution.

```
import numpy as np
import torch
p = 0.3
m1 = torch.Tensor([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
m2 = torch.Tensor([[3, 4, 2], [5, 1, 2], [0, 4, 2]])
A = torch.Tensor(np.random.choice([0,1], size=[len(m1),len(m1[0])], p=[1-p, p]))
m3 = torch.mul(1-A,m1) + torch.mul(A,m2)
print(m3)
```

Thanks