Can anyone help me out what does sign(rand-0.5) command mean
14 次查看(过去 30 天)
显示 更早的评论
1.Probability of X >0 if X= rand-0.5 2.Probability of X =1 if X= sign(rand-0.5) 3.Probability of X =-1 if X= sign(rand-0.5)
0 个评论
采纳的回答
Star Strider
2022-3-19
The ‘sign(rand-0.5)’ returns the sign (-1,0,1) of that result —
for k = 1:10
r = rand
X = sign(r-0.5)
end
.
2 个评论
Torsten
2022-3-19
编辑:Torsten
2022-3-19
You take a random number between 0 and 1 (that's what rand does).
Then you subtract 0.5 from this random number.
The result will be between -0.5 and 0.5 ( 0 - 0.5 and 1 - 0.5 are the extremes that can happen) with equal probability.
So the probability of getting a result > 0 (namely a result between 0 and 0.5) is equal to the probability of getting a result < 0 (namely between -0.5 and 0).
Can you now answer the question what the probability of getting a result > 0 is ?
更多回答(1 个)
Atsushi Ueno
2022-3-19
rand generates a uniformly distributed random number between 0 and 1.
So, rand-0.5 means random number between -0.5 and 0.5.
rand returns an array Y the same size as x, where each element of Y is:
- 1 if the corresponding element of x is greater than 0.
- 0 if the corresponding element of x equals 0.
- -1 if the corresponding element of x is less than 0.
So, sign(rand-0.5) usually outputs -1 or 1 like a result of coin toss.
It is extremely rare for sign(rand-0.5) to output 0
2 个评论
Atsushi Ueno
2022-3-19
- 50%
- 50%
- 50%
Do you mean you want exact probability?
I mean you need probability of sign(rand-0.5)==0 or not.
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!