How to replace the values in a variables based upon the common field values from another variable in matlab?

1 ビュー (過去 30 日間)
Niraj Bal Tamang
Niraj Bal Tamang 2021 年 4 月 6 日
コメント済み: Niraj Bal Tamang 2021 年 4 月 22 日
I have two variables 'P-idx' and 'Replacing_values'. P_idx is a bigger matrix consisiting of the FID_1 value/s from Replacing_values at different cells. Replacing_values has two fields: FID_1 and Volume. I want to replace the values of the FID_1 in the P_idx with the Volume values of Replacing_values based upon the common FID_1 values. Can anyone please help me how to do this?


Maadhav Akula
Maadhav Akula 2021 年 4 月 22 日
Hi Niraj,
I believe you want to replace all the values in P_idx with their corresponding Volume(based on FID_1) values from the provided struct, please check the following code snippet:
non_empty_idx = find(~cellfun('isempty', P_idx)); % Finding all the non-empty indices
for i = 1:length(non_empty_idx) % Looping through the non_empty indices and replacing them with Volume
P_idx{non_empty_idx(i)} = [network1(P_idx{non_empty_idx(i)}+1).Volume]; % Added 1 as FID_1 values started from 0 in network1
Hope this helps!

その他の回答 (0 件)


Community Treasure Hunt

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

Start Hunting!

Translated by