我试图用另一个数组替换一个数组,但只在原始数组为零的地方。这些数组的维度相等。
Array1 = [0, 2, 4, 2, 5, 0, 0, 2, 5]
Array2 = [1, 2, 3, 4, 5, 6, 7, 8, 9]
Run Code Online (Sandbox Code Playgroud)
我目前正在尝试使用下面的代码将 array2 叠加到数组 1 中,其中 array1 的值等于零。
Array1[Array1 .== 0] .= Array2
Run Code Online (Sandbox Code Playgroud)
从这里我希望得到以下...
Array1 = [1, 2, 4, 2, 5, 6, 7, 2, 5]
Run Code Online (Sandbox Code Playgroud)
但相反,我收到一个错误...
ERROR: DimensionMismatch("array could not be broadcast to match destination")
Run Code Online (Sandbox Code Playgroud)
有没有一种很好的方法来做到这一点,而无需一次遍历每个列表/数组一个元素?我正在处理非常大的数组,不知道这是否太慢。任何帮助表示赞赏。
我试图在 julia 中旋转 3D 数组,就好像它代表 3D 空间中的物理对象一样。本质上,我想知道是否有办法将数组沿 x、y 和/或 z 轴以 90 度为增量旋转。
在 2D 中,如果我逆时针旋转,它将是这样的......
1 2 3 3 6 9
4 5 6 -----> 2 5 8
7 8 9 1 4 7
Run Code Online (Sandbox Code Playgroud)
我希望同样的逻辑也适用于 3D。
任何帮助表示赞赏。