Unexpected broadcasting behaviour (?)

Is it because what you want is:

let 
    b = ones(3, 4)
    a = ones(1, 2)
    x = a .* b[2:2,2:end-1]
    @show size(x)

    b = ones(4, 3)
    a = ones(2, 1)
    x = a .* b[2:end-1,2:2]
    @show size(x)
end

If an index is an integer rather than a range, then a Matrix becomes a Vector

3 Likes