Re: [R] storing output data from a loop that has varying row numbers

From: Ivan Calandra <ivan.calandra_at_uni-hamburg.de>
Date: Tue, 01 Jun 2010 17:45:12 +0200

Hi Ross,

I think Joris answered your question, but to keep with your own code:

To set up a list, you can use:
DIST_LOOP <- list()
Or, if you know the length:
DIST_LOOP <- vector(mode="list", length=11) You would then fill up with (in your for loop): DIST_LOOP[[i]] <- SEL_HR ##Actually, what you had at the beginning, but DIST_LOOP is now a list so it should work.

Regarding what you're trying to do, wouldn't aggregate() work? Or with unique()? I still haven't completely understood what you looking for, so I might be completely wrong!

But as I said, I guess (and hope for you) Joris fixed the problem already

Ivan

Le 6/1/2010 16:56, RCulloch a écrit :
> Hi Ivan,
>
> Thanks again for your help! I'll just go through your questions...
>
> I'm still really confused about your question.
> -Sorry!!!
>
>
> Let me ask you some specific questions (maybe someone more experienced
> would understand at once, but I'm no expert; I hope I can still help
> you! In any case, I would like to understand for myself ;) )
>
> - is "seal_dist" the name of your data.frame?
> yes
> so..
> head(seal_dist)
>
> FROM TO DIST ID HR DD MM YY ANIMAL DAY
> 1 1 1 2.63981 'A1' 9 30 9 7 1 1
> 2 1 2 0.00000 'A1' 9 30 9 7 1 1
> 3 1 3 6.95836 'A1' 9 30 9 7 1 1
> 4 1 4 8.63809 'A1' 9 30 9 7 1 1
> 5 1 1 0.00000 'A1.1' 9 30 9 7 7 1
> 6 1 2 2.63981 'A1.1' 9 30 9 7 7 1
>
>
> - what do you want to do with
> SEL_DAY[i]=dist[i]
>
> That was a (desperate) attempt to do 'something', but didn't work - so
> shouldn't have been in the script I posted, sorry!
>
> ? What is "dist"?
> It is a measure of distance from one point (ID) to another i.e. the distance
> between A1 and A1.1
>
> If I understand well, you want to replace the values
> in FROM (then TO, then DIST...) with the values from the same column
> number in dist?
>
> The problem is that Arc doesn't output the data as I'd like, so I want to
> create a new column to add to the data. What Arc has done is taken a
> distance between each ID for each hour, but because the number of IDs in
> each hour don't match it means that the TO number is not unique to the ID
> throughout the entire dataset, only on that given hour. So when distance = 0
> in the TO column then that TO number -s equal to the ID i.e. the distance to
> A1 to A1 is 0, so I then want to use that information to create a new column
> that will tell me the actual ID. If that is any clearer?
>
>
> - Since I still haven't understood your goal completely, I still don't
> understand why you add the column TO_ID to SEL_HR.
> see above
>
>
> - In any case, a matrix cannot work because you want to store data of
> different classes in DIST_LOOP (ID is character and the others are
> numeric). You can either use a data.frame (if you really want to have
> the table-like structure, which is a list) or a list.
> I see, can you advise on how to set up a list to write to?
>
> - Moreover, the output from dput(your data) would really help to see
> what you have!
> I have not long posted it, I hope it helps!!
>
> Thanks again for your help Ivan, much appreciated,
>
> Ross
>
>

-- 
Ivan CALANDRA
PhD Student
University of Hamburg
Biozentrum Grindel und Zoologisches Museum
Abt. Säugetiere
Martin-Luther-King-Platz 3
D-20146 Hamburg, GERMANY
+49(0)40 42838 6231
ivan.calandra_at_uni-hamburg.de

**********
http://www.for771.uni-bonn.de
http://webapp5.rrz.uni-hamburg.de/mammals/eng/mitarbeiter.php

______________________________________________
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.
Received on Tue 01 Jun 2010 - 15:47:32 GMT

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.2.0, at Wed 02 Jun 2010 - 09:40:27 GMT.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.

list of date sections of archive