How to assign 0 or 1 randomly to the coordinates?

1 Ansicht (letzte 30 Tage)
Mehrdad Nasirshoaibi
Mehrdad Nasirshoaibi am 21 Feb. 2023
Kommentiert: Voss am 21 Feb. 2023
Hi everyone,
I defined a grid mesh as the follow;
x = linspace(-2,2,10) ;
y = linspace(-2,5,10) ;
[X,Y] = meshgrid(x,y) ;
plot(X,Y,'.r')
P = [X(:) Y(:)]
P = 100×2
-2.0000 -2.0000 -2.0000 -1.2222 -2.0000 -0.4444 -2.0000 0.3333 -2.0000 1.1111 -2.0000 1.8889 -2.0000 2.6667 -2.0000 3.4444 -2.0000 4.2222 -2.0000 5.0000
My question is that how can I assign only 0 or 1 to each coordinate randomly?
Thank you in advance.

Akzeptierte Antwort

Star Strider
Star Strider am 21 Feb. 2023
I am not certain what you want to do.
Perhaps this —
x = linspace(-2,2,10) ;
y = linspace(-2,5,10) ;
[X,Y] = meshgrid(x,y) ;
c = randi([0 1], size(Y))==1
c = 10×10 logical array
1 0 0 0 1 1 0 1 1 0 1 1 1 0 1 0 0 1 0 0 1 1 1 0 1 0 1 0 0 0 1 0 0 1 1 1 1 0 1 1 0 0 1 0 1 1 1 0 0 1 0 1 1 0 0 1 0 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 0 1 0 1 0 1 0 0 0 0 1 0 0 0 0 1 1 1 1 1 1 1 1 0 1 1 1
figure
plot(X(c),Y(c), '.r')
hold on
plot(X(~c), Y(~c), '.b')
hold off
axis('padded')
legend('1','0', 'Location','best')
The top row of ‘c’ correspoionds to -2 and the bottom row corresponds to +5. The columns are not flipped.
.

Weitere Antworten (1)

Voss
Voss am 21 Feb. 2023
val = randi([0 1], size(X)) ;

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