how do i randomly sample a sinewave?

hey can someone help me?i am trying to randomly sample sinewave but i am having no luck. i have tried Google, i tried using the help function on the 'rand' command and still i am no closer to sampling the signal.

2 commentaires

Azzi Abdelmalek
Azzi Abdelmalek le 15 Mar 2014
What do you mean?
Kel
Kel le 15 Mar 2014
i have signal shown by the code below and would like to take random samples of the signal,
fo=4 fs=100 ts=1/fs t=0:ts:1-ts n=length(t) y=2*sin(2*pi*fo*t) plot(t,y)

Connectez-vous pour commenter.

 Réponse acceptée

dpb
dpb le 15 Mar 2014
yrand=y(randperm(length(y),K));
returns K random samples from y

Plus de réponses (2)

Image Analyst
Image Analyst le 15 Mar 2014
Try this:
fo=4
fs=100
ts=1/fs
t=0:ts:1-ts
n=length(t)
y=2*sin(2*pi*fo*t)
plot(t,y)
numberOfSamplesToTake = 20;
sampleIndexes = randperm(numel(y), numberOfSamplesToTake)
% Plot the samples;
ts = t(sampleIndexes)
ys = y(sampleIndexes)
hold on;
plot(ts, ys, 'r*');

4 commentaires

Kel
Kel le 15 Mar 2014
thank you
Kel
Kel le 16 Mar 2014
hey i have tried your answer and matlab doesn't seem to like it. it's coming up with an error saying:
??? Error using ==> randperm Too many input arguments.
i am getting the blue sinwave but not the random red plots
You must have a really old version of MATLAB before they added the second input argument of randperm. Try this:
numberOfSamplesToTake = 20;
sampleIndexes = randperm(numel(y))
sampleIndexes = sampleIndexes(1:numberOfSamplesToTake)
dpb
dpb le 16 Mar 2014
Ah...good catch, IA. Never crossed my mind but my R12 doesn't include it--how quick we forget! :)
Presuming you're correct (and that's a good bet) perhaps a good use for a utility function for the OP to take the second argument.

Connectez-vous pour commenter.

Sulaymon Eshkabilov
Sulaymon Eshkabilov le 14 Août 2021
An alternative solution is:
N_samples = 20;
y_rand = datasample(y, N_samples);
% OR
y_rand = randsample(y,N_samples);

Catégories

En savoir plus sur Measurements and Feature Extraction dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by