Adding noise with certain standard deviation to uncorrupted data
74 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Deepayan Bhadra
il 6 Feb 2014
Modificato: Jos (10584)
il 6 Feb 2014
Hello,
I have a 1-D data set and I want to artificially corrupt it with noise of a certain standard deviation. Say for accurate pitch rate measurements 'q' of an aircraft, I want to add noise with a std. of 0.1047 rad/sec. How do I proceed?
Regards,
0 Commenti
Risposta accettata
Wayne King
il 6 Feb 2014
when you say 0.1047 rad/second, do you want these values to be bounded by a certain interval? or is the frequency value continuous (I'm assuming it is by rad/sec)
The other question is what probability distribution do you want the noise to follow and what is the mean value?
I'll assume here: Gaussian, mean 0, std 0.1047, frequency continuous
noise = 0.1047*randn(1000,1); % gives you 1000 samples
Note you get negative and positive rad/second values -- that may very well not be what you want.
0 Commenti
Più risposte (1)
Jos (10584)
il 6 Feb 2014
Modificato: Jos (10584)
il 6 Feb 2014
In addition to Wayne's suggestion you can sample noise from any distribution with unknown parameters and set the standard deviation to a specific value:
DesiredSD = 0.1047 ; % the desired standard deviation
noise = random('ncx2',10*rand,10*rand,[1000 1]) ; % some random noise
noise = DesiredSD * (noise ./ std(noise)) ; % scale the standard deviation
std(noise) % voila!
0 Commenti
Vedere anche
Categorie
Scopri di più su Verification, Validation, and Test in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!