In Peter's solution, just sample without replacement from integers instead of generating random uniforms. See ?sample.
-- Bert On Wed, Jun 4, 2025 at 5:23 AM Brian Smith <briansmith199...@gmail.com> wrote: > Hi, > > I dont see from the solution pov they are different. > > One followup Q though, how can I extend this to draw only integer > mid-point between 0-100 while maintaining minimum difference as 5? > > Also, are all generated points are equally likely? > > Thanks for your time and suggestions. > > Thanks and regards, > > On Wed, 4 Jun 2025 at 17:13, Bert Gunter <bgunter.4...@gmail.com> wrote: > > > > Is Peter's solution different then: > > > > diffs <- cumsum(runif(9, 5, 100/9)) > > x <-runif(1,0,100-diffs[9]) > > c(x, x+diffs) > > > > I ask because: > > 1. If yes, this is why more context is needed; > > 2. If no, the above avoids a sort. > > > > Cheers, > > Bert > > > > > > > > > > On Tue, Jun 3, 2025 at 2:15 PM peter dalgaard <pda...@gmail.com> wrote: > >> > >> Can't you just generate 10 values in (0,55), sort them, generate the > distances, add 5 and cumulate? > >> > >> > x <- sort(runif(10,0,55)) > >> > d <- diff(x)+5 > >> > cumsum(c(x[1],d)) > >> [1] 12.27815 21.21060 26.37856 36.03812 41.97237 57.02945 67.86113 > >> [8] 75.74085 81.28533 98.30792 > >> > >> > >> > On 3 Jun 2025, at 09.21, Brian Smith <briansmith199...@gmail.com> > wrote: > >> > > >> > Hi Richard, > >> > > >> > Thanks for your insight. > >> > > >> > As I mentioned in one of my earlier emails to the group, I imposed a > >> > constraint of accuracy up to two decimal places in order to obtain a > >> > finite set of possible values. For instance, if I were to round values > >> > to zero decimal places, the number of unique sequences that could be > >> > generated would be strictly finite and quite limited. Therefore, I > >> > chose a precision of two decimal places to allow for a larger but > >> > still finite number of possibilities. > >> > > >> > > >> > Now, my question is: how can this accuracy constraint be imposed > effectively? > >> > > >> > Is the only practical method to generate samples, round each to two > >> > decimal places, and then check for duplicates to ensure uniqueness? If > >> > so, I’m concerned this might be inefficient, as many samples could be > >> > discarded, making the process time-consuming. > >> > > >> > Is there a better or more efficient way to directly enforce this > >> > constraint while generating the values? > >> > > >> > ________________________________ > >> > > >> > Additionally, could you please elaborate on your suggestion regarding > >> > imposing minimum gap constraints by subtracting and then adding back > >> > certain gaps? > >> > > >> > > >> > For example, based on your earlier guidance, one possible sequence I > >> > obtained is: > >> > > >> > > >> > 10.07181, 14.49839, 14.74435, 18.75167, 42.70361, 55.79623, 63.40264, > >> > 68.62261, 92.49899, 98.29308 > >> > > >> > > >> > Now, I’d like to post-process this sequence to enforce a minimum > >> > difference constraint of, say, 5 units between values (including both > >> > lower and upper bounds). > >> > > >> > What would be the appropriate way to modify the sequence to impose > >> > this kind of constraint? > >> > > >> > > >> > Many thanks for your time and insight. > >> > > >> > On Tue, 3 Jun 2025 at 10:42, Richard O'Keefe <rao...@gmail.com> > wrote: > >> >> > >> >> PS I forgot about the weird gaps requirement. > >> >> What you do is subtract the gaps off and then add them back. I hope > that is clear. > >> >> > >> >> On Sun, 1 Jun 2025 at 6:52 AM, Brian Smith < > briansmith199...@gmail.com> wrote: > >> >>> > >> >>> Hi, > >> >>> > >> >>> Let say I have a range [0, 100] > >> >>> > >> >>> Now I need to simulate 1000 10 mid-points within the range with > >> >>> accuracy upto second decimal number. > >> >>> > >> >>> Let say, one simulated set is > >> >>> > >> >>> X1, X2, ..., X10 > >> >>> > >> >>> Ofcourrse > >> >>> > >> >>> X1 < X2 < ... <X10 > >> >>> > >> >>> I have one more constraint that the difference between any 2 > >> >>> consecutive mid-points shall be at-least 5.00. > >> >>> > >> >>> I wonder if there is any Statistical theory available to support > this > >> >>> kind of simulation. > >> >>> > >> >>> Alternately, is there any way in R to implement this? > >> >>> > >> >>> ______________________________________________ > >> >>> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > >> >>> https://stat.ethz.ch/mailman/listinfo/r-help > >> >>> PLEASE do read the posting guide > https://www.R-project.org/posting-guide.html > >> >>> and provide commented, minimal, self-contained, reproducible code. > >> > > >> > ______________________________________________ > >> > R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > >> > https://stat.ethz.ch/mailman/listinfo/r-help > >> > PLEASE do read the posting guide > https://www.R-project.org/posting-guide.html > >> > and provide commented, minimal, self-contained, reproducible code. > >> > >> -- > >> Peter Dalgaard, Professor, > >> Center for Statistics, Copenhagen Business SchoolSolbjerg Plads 3, 2000 > Frederiksberg, Denmark > >> Phone: (+45)38153501 > >> Office: A 4.23 > >> Email: pd....@cbs.dk Priv: pda...@gmail.com > >> > >> ______________________________________________ > >> R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see > >> https://stat.ethz.ch/mailman/listinfo/r-help > >> PLEASE do read the posting guide > https://www.R-project.org/posting-guide.html > >> and provide commented, minimal, self-contained, reproducible code. > [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide https://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.