Phil,

Pre-allocation makes sense.  However, I don't know the size of my 
resulting vector when starting.  In my loop, I only pull off results 
that meet a certain threshold.

-N

On 8/26/09 2:07 PM, Phil Spector wrote:
> Noah -
>    I would strongly advise you to preallocate the result vector
> using numeric() or rep(), and then enter the values based on 
> subscripts.  Allowing objects to grow inside of loops is one of
> the biggest mistakes an R programmer can make.
>
>                     - Phil Spector
>                      Statistical Computing Facility
>                      Department of Statistics
>                      UC Berkeley
>                      spec...@stat.berkeley.edu
>
>
> On Wed, 26 Aug 2009, Noah Silverman wrote:
>
>> The actually process is REALLY complicate, I just gave a simple example
>> for the list.
>>
>> I have a  lot of steps to process the data before I get a final
>> "score".  (nested loops, conditional statements, etc.)
>>
>> Right now, I'm just printing the scores to the screen.  I'd like to
>> accumulate them in some kind of data structure so I can either write
>> them to disk or graph them.
>>
>> -N
>>
>> On 8/26/09 12:27 PM, Erik Iverson wrote:
>>> How about ?append, but R is vectorized, so why not just
>>>
>>> result_list<- 2*item^2 , or for more complicated tasks, the 
>>> apply/sapply/lapply/mapply family of functions?
>>>
>>> In general, the "for" loop construct can be avoided so you don't 
>>> have to think about messy indexing.  What exactly are you trying to do?
>>>
>>> -----Original Message-----
>>> From: r-help-boun...@r-project.org 
>>> [mailto:r-help-boun...@r-project.org] On Behalf Of Noah Silverman
>>> Sent: Wednesday, August 26, 2009 2:20 PM
>>> To: r help
>>> Subject: [R] Managing output
>>>
>>> Hi,
>>>
>>>
>>> Is there a way to build up a vector, item by item.  In perl, we can
>>> "push" an item onto an array.  How can we can do this in R?
>>> I have a loop that generates values as it goes.  I want to end up 
>>> with a
>>> vector of all the loop results.
>>>
>>> In perl it woud be:
>>>
>>> for(item in list){
>>>       result<- 2*item^2 (Or whatever formula, this is just a pseudo 
>>> example)
>>>       Push(@result_list, result)  (This is the step I can't do in R)
>>> }
>>>
>>>
>>> Thanks!
>>>
>>> ______________________________________________
>>> 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.
>>>
>>
>>     [[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.
>>

        [[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