From: Duncan Murdoch <murdoch.duncan_at_gmail.com>

Date: Sat, 26 Jun 2010 08:38:45 -0400

>>> Dear fellow R users,

*>>>
*

*>>> I am replacing elements of a list like so:
*

*>>>
*

*>>> pulse_subset[[1:20]]=unlist(pulse[i])[1:20]
*

*>>>
*

>>> where pulse is a list of lists, and pulse [i] has >20 values.

*>>>
*

*>>> This gives the error "Recursive Indexing failed at level 2". But,
*

*>>> interestingly this instruction is part of a loop which has gone
*

*>>> through about 200,000 iterations before giving this error.
*

*>>>
*

*>>> Actual code:
*

*>>>
*

*>>> pulse_subset[[1:(length(unlist(pulse[i])[as.numeric(peak_start[i]):as.numeric(peak_end[i])]))]]
*

*>>> <- unlist(pulse[i])[as.numeric(peak_start[i]):as.numeric(peak_end[i])]
*

*>>>
*

*>>> Error in
*

*>>> pulse_subset[[1:(length(unlist(pulse[i])[as.numeric(peak_start[i]):as.numeric(peak_end[i])]))]]
*

*>>> <- unlist(pulse[i])[as.numeric(peak_start[i]):as.numeric(peak_end[i])] :
*

*>>> recursive indexing failed at level 2
*

*>>>
*

*>>> If anyone could shed some light I'd be rather grateful.
*

*>>>
*

*>>> Regards,
*

*>>> Jim Hargreaves
*

*>>>
*

*>>> ______________________________________________
*

*>>> 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.
*

*>>>
*

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 Sat 26 Jun 2010 - 12:43:28 GMT

Date: Sat, 26 Jun 2010 08:38:45 -0400

On 26/06/2010 8:29 AM, Jim Hargreaves wrote:

> On 06/26/2010 01:20 PM, Duncan Murdoch wrote: > >> On 26/06/2010 7:53 AM, Jim Hargreaves wrote: >>

>>> Dear fellow R users,

>> If pulse is a list, then pulse[i] is also a list, with one element. I >> think you want pulse[[i]], which extracts element i. >> > Ahh, I specified pulse[i] has >20 values in my original mail.But that could not be correct. Take a look at length(pulse[i]). Assuming that i is a scalar value, length(pulse[i]) will be 1. You really do want pulse[[i]]. You used unlist(pulse[i]) which is sometimes the same as pulse[[i]], but it really depends on what pulse[[i]] is. unlist() is a very crude tool, and you should avoid it unless you really need it.

> Basically > pulse is a list 1000 elements long, with each element in pulse having > between 1000 and 2000 elements of it's own. Pulse is a list of lists. > > Also as far as I am aware, [[ ]]'s should only be used when assigning > values to elements of a list/vector. >

Whoever told you that was mistaken.

Duncan Murdoch

> unlist(pulse[1]) gives x1, x2, x3, x4, x5 etc. etc. > >> If pulse_subset is a list, then pulse_subset[[1:20]] is equivalent to >> pulse_subset[[1]][[2]][[3]][[4]] ... [[20]], i.e. the syntax implies >> that it is a list containing a list etc, nested 20 levels deep. The >> error message is telling you that it's not. I'm not sure what your >> intention is in this case. >> Duncan Murdoch >>

>>> where pulse is a list of lists, and pulse [i] has >20 values.

> > ______________________________________________ > 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. > ______________________________________________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 Sat 26 Jun 2010 - 12:43:28 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 Sat 26 Jun 2010 - 13:20:36 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.
*