Error using rand Size inputs must be scalar.

조회 수: 18 (최근 30일)
Cesar Ramirez
Cesar Ramirez 2019년 2월 25일
댓글: Cesar Ramirez 2019년 2월 25일
Hi, I am trying to use rand , but Im getting erros Size inputs must be scalar.
I am almost new at matlab and was wonder how to fix that problem
D = 2 ;
g =1000;
sigma = 1;
for i=1:g
r = rand(0,sigma^2,[D 1]);
%...
end

채택된 답변

Walter Roberson
Walter Roberson 2019년 2월 25일
When you talk about sigma^2 you are talking about normal distribution (typically) not uniform distribution such as rand() produces.
I suspect you want to call normrnd() rather than rand() .
  댓글 수: 3
Walter Roberson
Walter Roberson 2019년 2월 25일
rand(0,1) means that you want an array with 0 rows and 1 columns .
Perhaps you want normrnd(0,1) ?
The code lines you are using are like what you would use to create a uniform random number in the range xl to xu . If you want to do that once for each member of r, then
xp = xl + (xu-xl) .* rand(size(r));
xh = xp + r;
Cesar Ramirez
Cesar Ramirez 2019년 2월 25일
Thanks again ! haha

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

추가 답변 (0개)

카테고리

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