How to do repeated random sample from a matrix

조회 수: 5 (최근 30일)
Tommy Tang
Tommy Tang 2016년 5월 9일
댓글: Star Strider 2016년 5월 9일
Hi, I am trying to figure out a problem. Suppose I have two matrices,one is parameter matrix B, which is 10,000*11.I obtain B from MVN simulation by 10,000 times. Elements from any row of B is denoted as b0(constant), b1, b2, b3, ...b11. Another matrix is X, an 11*10,000 matrix,The row is the number of observations, and the column is the number of variables. Elements of any column from X is denoted as x1 x2 ...x11.Now I need to randomly select one row from B and one column from X,respectively and then obtain y1= b0+b1*x1+b2*x2+...b11*x11. I need to repeat this process for 10,000 times so that I will obtain a column of 10,000*1 Y(=y1 y2 y3 ...y10,000). Please give me some ideas for this. Thanks!

채택된 답변

Star Strider
Star Strider 2016년 5월 9일
편집: Star Strider 2016년 5월 9일
It seems to me that you are doing simple matrix multiplication, then summing across the columns:
Y = sum(B*X,2);
  댓글 수: 2
Tommy Tang
Tommy Tang 2016년 5월 9일
Yes. I will need to do multiplication. But the difficult part is how to simultaneously select row and column from two matrices and then multiply for 10,000 times.
Star Strider
Star Strider 2016년 5월 9일
The approach I described does all of the multiplications at once. The original product matrix is (10000 x 10000), so to get your (10000 x 1) vector, I add across the columns. I thought that is what you want to do.

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

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Shifting and Sorting Matrices에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by