Fill an array according to the values of a different array
10 views (last 30 days)
Show older comments
Patrick Benz
on 12 Mar 2021
Commented: Patrick Benz
on 17 Mar 2021
I have 2 arrays. one is A = 21x2 array and the other is B = 700x2 array.
Exemplary:
A= 24 33
26 34
27 33
In the end, B should be structured in such a way that the value from the 1st column is entered in B as often as it is in the second column (33 lines with "24") of A.
The second problem i've got is that I want to fill an array with the output of a function but hence the function is using
Tiefe=normrnd(mu_Tiefe, sigma_Tiefe);
I want to create new random numbers for every cell of the array.
Is it possible to do that without a loop or do I have to use a loop for that?
Or is it mayby easier to create arrays containing the random numbers and pass the arrays to the function?
0 Comments
Accepted Answer
Aghamarsh Varanasi
on 15 Mar 2021
Edited: Aghamarsh Varanasi
on 15 Mar 2021
Hi Patrick,
Here is a small script for filling array based on another array.
% Lets say
%A = 24 3
% 22 5
% 34 2
A = [24 3; 22 5; 34 2];
B = zeros(1,sum(a(:,2)));
count = 1;
for i = 1:length(A)
idx = zeros(1,length(B));
idx(count : count + A(i,2)) = 1;
B(logical(idx)) = A(i,1);
count = count + A(i,2);
end
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!