Borrar filtros
Borrar filtros

Setting value to zero at random

2 visualizaciones (últimos 30 días)
Ulrik Nash
Ulrik Nash el 9 de Jul. de 2011
Hi Everyone,
Suppose I have two vectors
A = [0 2 2 0 1]
and
B = [1 3 4 2 1]
and suppose I apply following code:
val = max(nonzeros(A)); [~,J] = find(A == val); z(1,J) = 0;
Then the result is to change the 3 and the 4 in B to 0.
My problem is simply, that I only wish to change one place in B to 0, and the place actually changed should be chosen completely at random from those max nonzeros.
How could I adjust my code to allow this?
Regards,
Ulrik.

Respuesta aceptada

Paulo Silva
Paulo Silva el 9 de Jul. de 2011
idx=find(max(nonzeros(A))==A);
B(randi([idx(1) idx(end)]))=0

Más respuestas (0)

Categorías

Más información sobre Random Number Generation en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by