Random number in a specific range

2 次查看(过去 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.

产品

Community Treasure Hunt

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

Start Hunting!

Translated by