フィルターのクリア

how i subtract a vector( 1*n-dim ) from columns of a matrix (n*n-dim) without uses for , end and orders likes these?

1 回表示 (過去 30 日間)
i wish subtract a vector from columns of a matrix while my code is not great. example: a =
1 3
4 2
>> a-[1 2]= 0 1 3 0

採用された回答

Stephen23
Stephen23 2015 年 4 月 24 日
編集済み: Stephen23 2015 年 4 月 24 日
Use bsxfun for this:
>> A = [1, 3; 4, 2]
A =
1 3
4 2
>> B = [1, 2]
B =
1 2
>> bsxfun(@minus, A, B)
ans =
0 1
3 0
bsxfun expands any scalar dimensions to make the input variables the same size, then performs the specified operation. It is also much more efficient than using repmat.

その他の回答 (1 件)

Joseph Cheng
Joseph Cheng 2015 年 4 月 24 日
Look at the function repmat() to tile the vector to perform the matrix subtraction.

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by