Masking an array back to a selected region in a Matrix

1 Ansicht (letzte 30 Tage)
waqas
waqas am 23 Sep. 2019
Kommentiert: waqas am 23 Sep. 2019
Hi,
I have a column vector which I need to insert back to the a matrix(Attached in .mat file). The variable region has logicals in the places where I want to put the data given by variable name vdisp_selected. Is there an efficient way of achieving this by masking?
I tried to play around with masking based on region but I am getting a square region in the end.
Cheers,
  2 Kommentare
Fabio Freschi
Fabio Freschi am 23 Sep. 2019
region is 304x640 (double), vdisp_selected is 16472x1 (logical). How vdisp_selected is related to region?
waqas
waqas am 23 Sep. 2019
Hi,
Its the otherway around. 'region' is a 304x640 (logical) while vdisp_selected(16472x1) is a double. 'region' has (16742x1) ones and the locations where I have 1, I want to put the data of vdisp_selected.
I initially used the 'region' to extract data from another matrix and now want to insert updated data back to the same locations.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Andrei Bobrov
Andrei Bobrov am 23 Sep. 2019
out = double(region);
out(region) = vdisp_selected;

Weitere Antworten (0)

Community Treasure Hunt

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

Start Hunting!

Translated by