HI
 the code is suppose to generate a random value selected uniformly as a time
interval in seconds (that's the dT) from the range given from    dtmin<-969
  dtmax<-9884. Once that value is selected the program will generate the
interval (ts1, ts2, and so on. for each sampling without getting out of
their time limits.
For example for sample 1 the duration of the event is 1750 seconds (sorry I
miss a one) so if the dt selected is 1200 for example it will generate a
series of 1 then 1200 2400 and so on but since the  we have
while(i+dt[m]<tmax[m]) it will not print 2400, because there are not values
for that.
but if ifelse(dtmin<=(tmax[1]-i), dt[1]<-round(runif(1,dtmin,(tmax[1]-i))),
dt[1]<-(tmax[1]-i))
means that if the sample has a very short duration such as sample 1 then it
will sample at 1200 seconds and then will sample from the range that is left
so (1750-1200).
 I hope this clarifies a bit more. My problem is that since for each sample
ts has several values I do not know how to store them in a way that allows
me to do a loop.

On Mon, Jul 28, 2008 at 5:20 AM, Sofia Martinez <[EMAIL PROTECTED]>wrote:

> HI:
> I need ideas on how to make this code shorter (maybe with a second loop?).
> The code as it is works, but in this case I only have 14 samples, but it
> will become insane with more, so I need a way to make it more automatic. The
> problem is that the output from ts1, ts2, and so on is a vector with more
> than one value, so I do not know how to solve this.
>    Thanks
>       Prenewbie
>
> The code is the following:
>
> duration<-c(750, 8940,17180, 8693,10100, 7990,24820, 6770,
> 7390,8450,18400,16252,6080,11030)
>
> tmax<-0
> dt<-0
> for (m in 1:14)
>  {
>   tmax[m]<-duration[m]
>    dtmin<-969
>    dtmax<-9884
>    i<-1
>    dt[m]<-round(runif(1,dtmin,(tmax[m]-1)))}
>       ts<-c(1)
>       ts1<-ts
>       ts2<-ts1
>       ts3<-ts1
>       ts4<-ts1
>       ts5<-ts1
>       ts6<-ts1
>       ts7<-ts1
>       ts8<-ts1
>       ts9<-ts1
>       ts10<-ts1
>       ts11<-ts1
>       ts12<-ts1
>       ts13<-ts1
>       ts14<-ts1
>       for (m in 1:2){
>       while(i+dt[m]<tmax[m])
>       {
>       ts1<-append(ts,i+dt[1])
>       i<-i+dt[1]
>       ifelse(dtmin<=(tmax[1]-i), dt[1]<-round(runif(1,dtmin,(tmax[1]-i))),
> dt[1]<-(tmax[1]-i))
>       ts2<-append(ts,i+dt[2])
>       i<-i+dt[2]
>       ifelse(dtmin<=(tmax[2]-i), dt[2]<-round(runif(1,dtmin,(tmax[2]-i))),
> dt[2]<-(tmax[2]-i))
>        ts3<-append(ts,i+dt[3])
>       i<-i+dt[3]
>       ifelse(dtmin<=(tmax[3]-i), dt[3]<-round(runif(1,dtmin,(tmax[3]-i))),
> dt[3]<-(tmax[3]-i))
>        ts4<-append(ts,i+dt[4])
>       i<-i+dt[4]
>       ifelse(dtmin<=(tmax[4]-i), dt[4]<-round(runif(1,dtmin,(tmax[4]-i))),
> dt[4]<-(tmax[4]-i))
>        ts5<-append(ts,i+dt[5])
>       i<-i+dt[5]
>       ifelse(dtmin<=(tmax[5]-i), dt[5]<-round(runif(1,dtmin,(tmax[5]-i))),
> dt[5]<-(tmax[5]-i))
>        ts6<-append(ts,i+dt[6])
>       i<-i+dt[6]
>       ifelse(dtmin<=(tmax[6]-i), dt[6]<-round(runif(1,dtmin,(tmax[6]-i))),
> dt[6]<-(tmax[6]-i))
>        ts7<-append(ts,i+dt[7])
>       i<-i+dt[7]
>       ifelse(dtmin<=(tmax[7]-i), dt[7]<-round(runif(1,dtmin,(tmax[7]-i))),
> dt[7]<-(tmax[7]-i))
>        ts8<-append(ts,i+dt[8])
>       i<-i+dt[8]
>       ifelse(dtmin<=(tmax[8]-i), dt[8]<-round(runif(1,dtmin,(tmax[8]-i))),
> dt[8]<-(tmax[8]-i))
>        ts9<-append(ts,i+dt[9])
>       i<-i+dt[9]
>       ifelse(dtmin<=(tmax[9]-i), dt[9]<-round(runif(1,dtmin,(tmax[9]-i))),
> dt[9]<-(tmax[9]-i))
>        ts10<-append(ts,i+dt[10])
>       i<-i+dt[10]
>       ifelse(dtmin<=(tmax[10]-i),
> dt[10]<-round(runif(1,dtmin,(tmax[10]-i))), dt[10]<-(tmax[10]-i))
>        ts11<-append(ts,i+dt[11])
>       i<-i+dt[11]
>       ifelse(dtmin<=(tmax[11]-i),
> dt[11]<-round(runif(1,dtmin,(tmax[11]-i))), dt[11]<-(tmax[11]-i))
>        ts12<-append(ts,i+dt[12])
>       i<-i+dt[12]
>       ifelse(dtmin<=(tmax[12]-i),
> dt[12]<-round(runif(1,dtmin,(tmax[12]-i))), dt[12]<-(tmax[12]-i))
>        ts13<-append(ts,i+dt[13])
>       i<-i+dt[13]
>       ifelse(dtmin<=(tmax[13]-i),
> dt[13]<-round(runif(1,dtmin,(tmax[13]-i))), dt[13]<-(tmax[13]-i))
>        ts14<-append(ts,i+dt[14])
>       i<-i+dt[14]
>       ifelse(dtmin<=(tmax[14]-i),
> dt[14]<-round(runif(1,dtmin,(tmax[14]-i))), dt[14]<-(tmax[14]-i))
>       } }
>      ts1<-append(ts,i+dt[1])
>      ts2<-append(ts,i+dt[2])
>      ts3<-append(ts,i+dt[3])
>      ts4<-append(ts,i+dt[4])
>      ts5<-append(ts,i+dt[5])
>      ts6<-append(ts,i+dt[6])
>      ts7<-append(ts,i+dt[7])
>      ts8<-append(ts,i+dt[8])
>      ts9<-append(ts,i+dt[9])
>      ts10<-append(ts,i+dt[10])
>      ts11<-append(ts,i+dt[11])
>      ts12<-append(ts,i+dt[12])
>      ts13<-append(ts,i+dt[13])
>      ts14<-append(ts,i+dt[14])
>
>

        [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to