Can anyone help me out what does sign(rand-0.5) command mean

12 views (last 30 days)
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)

Accepted Answer

Star Strider
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
r = 0.1812
X = -1
r = 0.5620
X = 1
r = 0.3196
X = -1
r = 0.6013
X = 1
r = 0.7162
X = 1
r = 0.7427
X = 1
r = 0.9730
X = 1
r = 0.6988
X = 1
r = 0.4561
X = -1
r = 0.5195
X = 1
.
  2 Comments
Torsten
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 ?

Sign in to comment.

More Answers (1)

Atsushi Ueno
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
Atsushi Ueno on 19 Mar 2022
  1. 50%
  2. 50%
  3. 50%
Do you mean you want exact probability?
I mean you need probability of sign(rand-0.5)==0 or not.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!