Random number in a specific range

4 次查看(过去 30 天)
Hello,,I wanna generate random numbers from range for example [-0.2,0.2] using matlab functions like randn or sth. thanks in advance.

采纳的回答

bym
bym 2012-5-13
x = .4 * rand(100,1)-.2;
  1 个评论
Walter Roberson
Walter Roberson 2012-5-14
This answer is good if you want uniform distribution. If you want normal distribution then this answer will not work; see my Answer.

请先登录,再进行评论。

更多回答(2 个)

Oleg Komarov
Oleg Komarov 2012-5-13
You can scroll down the documentation of randn for an example.
EDIT You don't even need to scroll down.
  2 个评论
Walter Roberson
Walter Roberson 2012-5-14
The closest I see in the randn documentation is for a given mean and standard deviation. Nothing about a given range. Not for randn.
http://www.mathworks.com/help/techdoc/ref/randn.html
Oleg Komarov
Oleg Komarov 2012-5-14
Right, on the FEX there are contributions with random generators from truncated normal.

请先登录,再进行评论。


Walter Roberson
Walter Roberson 2012-5-14
It is not possible to construct a normal distribution over a restricted range. By definition a normal distribution must have an infinite tail in both directions.
If you need something that is much like a normal distribution but is defined over a limited range, then consider using a beta distribution.

类别

Help CenterFile Exchange 中查找有关 Random Number Generation 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by