Can anyone help me out what does sign(rand-0.5) command mean
14 views (last 30 days)
Show older comments
Mashrur Zawad
on 19 Mar 2022
Commented: Atsushi Ueno
on 19 Mar 2022
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 Comments
Accepted Answer
Star Strider
on 19 Mar 2022
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 Comments
Torsten
on 19 Mar 2022
Edited: Torsten
on 19 Mar 2022
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 ?
More Answers (1)
Atsushi Ueno
on 19 Mar 2022
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 Comments
Atsushi Ueno
on 19 Mar 2022
- 50%
- 50%
- 50%
Do you mean you want exact probability?
I mean you need probability of sign(rand-0.5)==0 or not.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!