how to give probability of 90% to unique values of a vector and 10% to repeated values?

1 visualización (últimos 30 días)
Hello, how can I give 90% probability to elements of a vector that do not repeat themselves, and to elements that repeat 10%.
for example:
I have a vector
vector = [10 15 15 23 20 40]
give a probability of 90% to the numbers 10,23,20,40, and a probability of 10% to the numbers that are repeated, that is, 15,15.
and store it in a variable
thanks in advance
  2 comentarios
Rik
Rik el 15 de Dic. de 2021
Have you already found a way to separate those two groups of numbers? That seems the first step to me. Then you can sample them in a 1:9 ratio.

Iniciar sesión para comentar.

Respuesta aceptada

Image Analyst
Image Analyst el 15 de Dic. de 2021
Did you try a simple for loop?
vector = [10 15 15 23 20 40];
probabilities = zeros(1, length(vector));
for k = 1 : length(vector)
if sum(vector == vector(k)) >= 2
% Repeated
probabilities(k) = 0.1;
else
% Not repeated
probabilities(k) = 0.9;
end
end
probabilities % Show in command window.
probabilities = 1×6
0.9000 0.1000 0.1000 0.9000 0.9000 0.9000
  5 comentarios
Image Analyst
Image Analyst el 22 de Dic. de 2021
Oh, OK, great! You're welcome. Thanks for Accepting my Answer. 😃
giancarlo maldonado cardenas
giancarlo maldonado cardenas el 18 de Feb. de 2022
Hello my friend how are you? I hope it's ok.
could you help me with this question? https://la.mathworks.com/matlabcentral/answers/1652655-how-can-i-choose-non-repeating-values-with-a-probability-of-90-and-10
is very similar to this question
Thanks in advance

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre MATLAB en Help Center y File Exchange.

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by