/ / Odejmij stałą wartość od elementów w nieskalarnej tablicy struct w wektoryzowany sposób - performance, matlab, vectorization

Odejmij stałą wartość od elementów w nieskalarnej tablicy struct w wektoryzowany sposób - performance, matlab, vectorization

Mam taką strukturę

temp_struct(1).budget=8
temp_struct(2).budget=8

i chcę odjąć stałą wartość od obu (zastępując 8 nową wartością). Jak mogę to zrobić bardziej efektywnie bez użycia pętli w programie Matlab?

Odpowiedzi:

4 dla odpowiedzi № 1
%extract a cs list and convert it to a vector, then apply the operation you want in a vectorized manner
a=[temp_struct(:).budget]-42
%convert to cell because there is no direct way from vector to cs list
a=num2cell(a)
%use a cs list to assign the values.
[temp_struct(:).budget]=a{:}

Co to jest lista cs?