scale
scale(A, b) scale(b, A)
Scale an array A
by a scalar b
, returning a new array.
If A
is a matrix and b
is a vector, then scale(A,b)
scales each column i
of A
by b[i]
(similar to A*diagm(b)
), while scale(b,A)
scales each row i
of A
by b[i]
(similar to diagm(b)*A
), returning a new array.
Note: for large A
, scale
can be much faster than A .* b
or b .* A
, due to the use of BLAS.
Examples
Scale an array by a scalar:
julia> A = [1, 2, 3, 4];
julia> b = 2;
julia> scale(A, b)
4-element Array{Int64,1}:
2
4
6
8
This example scales each element of array A
by the scalar value b
, resulting in a new array.
Scale each column of a matrix by a vector:
julia> A = [1 2 3; 4 5 6; 7 8 9];
julia> b = [2, 3, 4];
julia> scale(A, b)
3×3 Array{Int64,2}:
2 4 6
12 15 18
28 32 36
In this example, the function scale(A, b)
scales each column i
of matrix A
by b[i]
, resulting in a new matrix.
Scale each row of a matrix by a vector:
julia> A = [1 2 3; 4 5 6; 7 8 9];
julia> b = [2, 3, 4];
julia> scale(b, A)
3×3 Array{Int64,2}:
2 4 6
12 15 18
28 32 36
In this example, the function scale(b, A)
scales each row i
of matrix A
by b[i]
, resulting in a new matrix.
Note: The scale
function can be more efficient than using element-wise multiplication (A .* b
or b .* A
) for large arrays due to the use of BLAS.
See Also
Array, broadcast, cat, combinations, conj!, digits!, fieldnames, fill, fill!, last, length, maximum, minimum, ones, parent, parentindexes, partitions, permutations, pointer, pointer_to_array, promote_shape, rand!, reshape, scale, similar, sum, sum_kbn, takebuf_array, transpose!, vec, zeros,User Contributed Notes
Add a Note
The format of note supported is markdown, use triple backtick to start and end a code block.