Represent a variable with probability in Matlab

3 views (last 30 days)
popeye
popeye on 4 Sep 2014
Answered: Ayush on 22 Oct 2024
Hello all,
Assume that I have an equation: y = x + n , in which:
  • y is output
  • x is input
  • n is noise
The occurrence probability of n in the equation above is just 4%. How I can represent n in matlab ?
Thanks all,

Answers (1)

Ayush
Ayush on 22 Oct 2024
Hi,
To represent the noise “n”, given that it occurs with a probability of 4%, you can use a combination of random number generation and conditional logic. For probability check you can use the “rand()” function to generate a random number between 0 and 1, If this number is less than 0.04, you introduce noise. Refer to the example code below:
% Define the probability of noise occurrence
probability_of_noise = 0.04;
% Define the range or standard deviation of the noise if it occurs
noise_magnitude = 1; % You can adjust this as needed
% Generate a random number to decide if noise occurs
if rand() < probability_of_noise
% If noise occurs, generate noise
n = noise_magnitude * randn(); % Gaussian noise
else
% If noise does not occur, set n to zero
n = 0;
end
% Example usage with a given input x
x = 10; % Example input
y = x + n; % Calculate the output
For noise generation, I have used the “randn()” function which generates a random number from a standard normal distribution. You can scale this by a noise magnitude to adjust the level of noise.
For more information on the “rand” and “randn” functions refer to the below documentations:

Categories

Find more on Random Number Generation in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!