这是我对Stack Overflow的第一个问题,请多多包涵。假设我有两个形状相同的数组<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.10/lodash.min.js"></script>
和X
Y
我想创建一个函数import numpy as np
X = np.array(([0, 0],
[0, 0]), dtype=float)
X = np.array(([1, 1],
[1, 1]), dtype=float)
,它将随机地将数组混合在一起,就像这样:
mix_arrays(X, Y)
这是它可能返回的内容:
def mix_arrays(array_0, array_1)
# magic
new_array = # ...
return new_array
基本上,对于mix_arrays(X, Y)
# Could Return:
# [[0, 1],
# [1, 1]]
# or:
# [[1, 0],
# [0, 1]]
# or:
# [[0, 0],
# [1, 1]]
中的每个元素,该元素有50%的机会来自new_array
,有50%的机会来自array_0
我确定这个问题已经存在,但是在堆栈溢出时找不到。预先感谢您的宝贵时间!
答案 0 :(得分:1)
只需使用np.where
def random_mix(X, Y):
choice = np.random.randint(2, size = X.size).reshape(X.shape).astype(bool)
return np.where(choice, X, Y)