I have a two 2D Arrays with 140 zeros, for the 1st I want 70 numbers to have a value between 0 to 1, for the 2nd I want the remaining 70 to have a value <1 and >0

8 visualizzazioni (ultimi 30 giorni)
Hi everyone,
I currently have the below where N=140 In D1 I want half of the rows (i.e. 70 of them) to have a value >0 but <1, In D2 I want half of the rows (but not the same rows as D1 to have a value >0 and <1
Please can someone help around the best way of doing this?
D1=zeros(N,1); D2=zeros(N,1)

Risposta accettata

Thorsten
Thorsten il 22 Gen 2016
Modificato: Thorsten il 22 Gen 2016
N = 140;
ind = randperm(N);
D1 = zeros(1,N);
D2 = zeros(1,N);
D1(ind(1:N/2)) = rand(1,N/2);
D2(ind(N/2+1:end)) = rand(1,N/2);
% visualize
stairs(D1)
hold on
stairs(D2, 'r')
Rand generates random numbers in the open interval (0,1), in accordance with your specification >0 and <1.

Più risposte (1)

Om
Om il 22 Gen 2016
Thank you so much!

Categorie

Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by