Filter löschen
Filter löschen

How to create a weighted random number in matrix?

1 Ansicht (letzte 30 Tage)
Irina
Irina am 2 Aug. 2013
I want to assign weighted random values to a matrix. The two values I am assigning are 0 and 1. A point needs to have a 60% probability of being assigned 0 and 40% of being assigned 1. How do I code that?

Antworten (1)

John Petersen
John Petersen am 2 Aug. 2013
a = rand(10); % 10x10 matrix
b = a>.6; % all elements of a > .6 are 1 all < .6 are 0
60% should be 1's, 40 % should be zeros You can test by sum(sum(b))/100
  2 Kommentare
Irina
Irina am 2 Aug. 2013
I phrased the question incorrectly, I'm sorry. Point values are either 0 or 1. The value of point (x,y) is based on the value of point (x-1,y). If (x-1,y) is 1, then (x,y) has a 60% chance of being 1 and 40% chance of being 0. Do you know how to code for that?
John Petersen
John Petersen am 9 Aug. 2013
Bearbeitet: John Petersen am 9 Aug. 2013
I don't see how that makes the problem different.
a = rand(1)>.6;
This says that the value of 'a' will be either 0 or 1 and has a 60% chance of being a 1.

Melden Sie sich an, um zu kommentieren.

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by