replace not selected value by zero
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
HASAN AL-KAF
le 28 Jan 2018
Commenté : Star Strider
le 28 Jan 2018
Hi I have 10 values. my code select 3 values, for example, if x=[1 2 3 4 5 6 7 8 9 10] and my code select [1 3 5] i want a code to do this x= [1 0 3 0 5 0 0 0 0 0]?.
0 commentaires
Réponse acceptée
Star Strider
le 28 Jan 2018
This works:
x=[1 2 3 4 5 6 7 8 9 10];
ToKeep = [1 3 5];
idx = ismember(x, ToKeep);
Result = x .* idx
Result =
1 0 3 0 5 0 0 0 0 0
2 commentaires
Image Analyst
le 28 Jan 2018
Totally different than what I did and that made me see the ambiguity. We need Hasan to clarify if the [1,3,5] are the indexes of x that should be kept (like I assumed), or the values of x that should be kept (like you assumed).
Star Strider
le 28 Jan 2018
‘I have 10 values. my code select 3 values,’
I interpret ‘values’ as indicating array elements.
Plus de réponses (1)
Image Analyst
le 28 Jan 2018
Here's one way:
x=[1 2 3 4 5 6 7 8 9 10]
mask = [1 3 5]
x2 = zeros(1, length(x)); % Initialize x2
x2(mask) = x(mask) % Pull over values in the mask from x and put them in the same column.
0 commentaires
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!