# How to create the random sampling matrix for a certain number of times?

조회 수: 3(최근 30일)
S Priya 2022년 2월 24일
편집: Awais Saeed 2022년 2월 24일
I need to find random sample(consisting of 40 values) for 16 elements (each different).Using Em22(:,:,i) will help?How to do it?
c=1;
d=20;
y11=c+(d-c)*rand(20,1);
y12=c-(d-c)*rand(20,1);
y=[y11;y12];
Em1=(432*10^6+y*10^6);
for k=1:40
Em11(k)=Em1(k,1); %Elastic Modulus(40 random values)for 1 element
Em22(:,:,i)=Em11(:,:,i); %Elastic Modulus for all elements(Doubt)
end
##### 댓글 수: 2표시숨기기 이전 댓글 수: 1
S Priya 2022년 2월 24일
Thank you for the answer. Now the values which I am getting for Em22 is for 1 element, I want Em22 matrix (40x1) with 16 elements. (With each Em22 different from one another.)

댓글을 달려면 로그인하십시오.

### 답변(1개)

Awais Saeed 2022년 2월 24일
편집: Awais Saeed 2022년 2월 24일
What I understood is that you want those 40 values with 16 different c and d, right? If yes, then loop through those values, do your calculations and store it in a multi-dimensional array.
c = [1 2];
d = [20 21];
% loop through c and d
for idx = 1:1:length(c)
y11 = c(idx)+(d(idx)-c(idx))*rand(20,1);
y12 = c(idx)-(d(idx)-c(idx))*rand(20,1);
y = [y11;y12];
Em1 = (432*10^6+y*10^6);
for k=1:40
Em11(k) = Em1(k,1); %Elastic Modulus(40 random values)for 1 element
Em22(:,k,idx) = Em11(k); %Elastic Modulus for all elements(Doubt)
end
end
Em22(:,:,1); % for first element
Em22(:,:,2); % for second element
##### 댓글 수: 2표시숨기기 이전 댓글 수: 1
Awais Saeed 2022년 2월 24일
You can store Em11 for one element in Em22(:,:,1) and Em11 for another element in Em22(:,:,2) and so on. To access Em22 for first element, just use Em22(:,:,1). I have updated the script for more clarity.

댓글을 달려면 로그인하십시오.

### Community Treasure Hunt

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

Start Hunting!