Vectorising setting values of array by reading from other array

1 回表示 (過去 30 日間)
Vinay Pandey
Vinay Pandey 2011 年 11 月 27 日
I have an array which contains some numbers, and I have another array which is initialised to zeros.
arr = [45; 56 ...] %array with numbers
x-arr = zeros(1000,1) %zero-initialised array
I want to set all index value of x to 1 which have a value in arr namely, as shown, 45 and 56 are values contained in arr, so I want:
x-arr[45] = 1
x-arr[56] = 1
and the rest of the values, which are not contained in arr to remain to zero. Is there a vectorised approach to problem besides the obvious for-loop?

採用された回答

Fangjun Jiang
Fangjun Jiang 2011 年 11 月 27 日
x_arr=zeros(1000,1);
arr=[45;56];
x_arr(arr)=1;
You can't use 'x-arr' as it regards '-' as the minus operator.

その他の回答 (0 件)

カテゴリ

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

Community Treasure Hunt

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

Start Hunting!

Translated by