# Question with vectorisation?

조회 수: 2 (최근 30일)
Manne Plok 2018년 9월 6일
편집: Stephen23 2018년 9월 6일
Hello This is the code I have.
n = 1:1000
A(n,1) = ceil(rand*5);
What this does is it finds a random value between 1 and 5, and places that same value in all rows 1 to 1000, col 1 of A. This is not what I wanted it to do. I wanted it to put a different random number each time for each row of A from 1 to 1000. I want to use vectorisation (and not for loops) because otherwise it is too slow. What step am I missing?

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

### 답변 (1개)

Stephen23 2018년 9월 6일
편집: Stephen23 2018년 9월 6일
Just use randi and define the output size:
A(1:1000,1) = randi(5,1000,1)
You could do the same with rand, but this is just more complex with no benefit:
A(1:1000,1) = ceil(5*rand(1000,1))

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

### 카테고리

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

R2017b

### Community Treasure Hunt

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

Start Hunting!

Translated by