[R] Creating a loop with an indefinite end term

David Winsemius dwinsemius at comcast.net
Tue Apr 10 19:41:23 CEST 2012


On Apr 10, 2012, at 1:08 PM, Steve Lavrenz wrote:

> I definitely need a loop - the example I gave was only a simple one.  
> Say I
> want to do more complex calculations in each step, such that the  
> numeric
> difference between consecutive terms is not constant.

You can always use:
for( i in  seq(0,100, by=5) ){
              ....stuff... }

seq_along() creates an integer index from a vector. It avoids potenial  
problems with
     for( i in 1:length(vec) ) {   }

>
> -Steve
>
>
>
> From: Jean V Adams [mailto:jvadams at usgs.gov]
> Sent: Tuesday, April 10, 2012 12:38 PM
> To: Steve Lavrenz
> Cc: r-help at r-project.org
> Subject: Re: [R] Creating a loop with an indefinite end term
>
>
>
>
> Do you need a loop at all?
>
> Will this do the trick?
>
> seq(from=0, to=100, by=5)
>
> Jean
>
>
> Steve Lavrenz wrote on 04/10/2012 09:48:34 AM:
>
>> Everyone,
>>
>> I'm very new to R, especially when it comes to loops and functions,  
>> so
>> please bear with me if this is an elementary question. I cannot  
>> seem to
>> figure out how to construct a loop which runs a function until a  
>> certain
>> value is computed. For example, say I have the following:
>>
>> num = numeric (10)
>> num [1] = 0
>> for (i in 2:10)   {
>>      num [i] = num [i-1] + 5
>> }
>>
>> This adds 5 to the preceding spot of a vector of length 10 to get the
> value
>> in the current spot. However, say I don't just want to run this for  
>> 10
>> spots; rather I want to run it until a certain value (say, 100) is
> computed.
>> How I construct my loop to do this?
>>
>> Thanks!
>
>
> 	[[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at 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.

David Winsemius, MD
West Hartford, CT



More information about the R-help mailing list