What are the possible ways to generate a random time series?

3 views (last 30 days)
Hi everyone,
I require generating random times to test the computation. However, I got totally different results when I repeated my experiment for 1000 and, 10000 random time values. Here is the script that I used to generate random times.
SECONDS_PER_DAY = 24*60*60;
START_DATE = '2015-07-01';
END_DATE = '2021-12-31';
% Algorithm
startDateNum = datenum(START_DATE,'yyyy-mm-dd');
endDateNum = datenum(END_DATE, 'yyyy-mm-dd');
dayRange = endDateNum - startDateNum;
secondsRange = SECONDS_PER_DAY*dayRange;
randomNumberOfSeconds = randi(secondsRange,NUMBER_RANDOM_TIMES,1);
randomDatenums = startDateNum + randomNumberOfSeconds/SECONDS_PER_DAY;
AA = datevec(randomDatenums);
I think maybe the random times generated by this method are biased. May someone share their thoughts and suggest other possible ways to generate random time's bounded between the start and end dates.
Thank you!
  1 Comment
Chunru on 5 Jul 2022
There is no problem in the above random time generate. It is expected that the results (not sure what results are referred to) will be different with 1000 trials and 10000 trials. In theory, the results (some statistics ???) will be converging when number of trials are bit enough.

Sign in to comment.

Answers (0)


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!