Insert elements into vector
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
I have a vector 'index' and 'val_index'
index = [1;2;4;5;6;8;9];
index_val = [11;25;3;4;56;7;9];
I remove indices 3 and 7 from the 'index' . The 'removed_index' which I have is the cell array.
removed_index = {[7],[3]};
removed_val = {[1.1],[3.2]};
I want to insert removed indices and the values to the 'index'
Result should be:
index_all = [1;2;3;4;5;6;7;8;9];
index_val_all = [11;25;3.2;3;4;56;1.1;7;9];
0 commentaires
Réponse acceptée
Stephen23
le 31 Oct 2020
index = [1;2;4;5;6;8;9];
index_val = [11;25;3;4;56;7;9];
removed_index = [7,3]; % simpler to use a numeric array
removed_val = [1.1,3.2]; % simpler to use a numeric array
Then all you need is:
idx = [index(:);removed_index(:)];
vec = [index_val(:);removed_val(:)];
vec(idx) = vec
idx(idx) = idx
3 commentaires
Stephen23
le 6 Nov 2020
Modifié(e) : Stephen23
le 6 Nov 2020
index = [1;4;5;8;9];
index_val = [11;3;4;56;7];
removed_index = [7,3]; % simpler to use a numeric array
removed_val = [1.1,3.2]; % simpler to use a numeric array
idx = [index(:);removed_index(:)];
vec = [index_val(:);removed_val(:)];
[idx,ids] = sort(idx); idx
vec = vec(ids)
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Matrices and Arrays dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!