# [R] List Structure and Acces to data

David Carlson dcarlson at tamu.edu
Wed Jul 24 21:59:30 CEST 2013

```I may not understand, but if you are looking for a way to
extract the second item from each list element, you will need
to use lapply():

a <- list(LETTERS[1:3], 10:12, LETTERS[26:24], 15:13)
b <- list(LETTERS[4:6], 15:17, LETTERS[23:21], 10:8)
c <- list(LETTERS[7:9], 20:22, LETTERS[20:18], 5:3)
abc <- list(a=a, b=b, c=c)
abc
# . . . Output deleted
abc[[1]][[2]]
# [1] 10 11 12
abc[["a"]][[2]]
# [1] 10 11 12
abc[[1:3]][[2]] # Does not work
# Error in abc[[1:3]][[2]] : subscript out of bounds
lapply(abc, "[[", 2)
# \$a
# [1] 10 11 12
#
# \$b
# [1] 15 16 17
#
# \$c
# [1] 20 21 22
# or less cryptically lapply(abc, function(x) x[[2]])

-------------------------------------
David L Carlson
Associate Professor of Anthropology
Texas A&M University
College Station, TX 77840-4352

-----Original Message-----
From: r-help-bounces at r-project.org
[mailto:r-help-bounces at r-project.org] On Behalf Of MacQueen,
Don
Sent: Wednesday, July 24, 2013 2:26 PM
To: Eric TRAVAGLINI; r-help at r-project.org
Subject: Re: [R] List Structure and Acces to data

What you are doing looks like it is probably more complicated
than
necessary, but since I have no idea what structure you intend
to create,
it is hard to say.

Here is a suggestion:

try this:

str(my_echant_hist)

It will give you a summary of the structure of that object,
which should

The expression
my_echant_hist[[1]][[2]]
makes sense if my_enchant_hist is a list, and if its first
element is also
a list. Then you're asking for the second element within the
first element.

There is nothing in R syntax that I know of that gives meaning
to any of
these
my_echant_hist[[]]
my_echant_hist[[:]]
my_echant_hist[[;]]
so I don't know what you were trying to get.

I do suggest studying documentation for syntax related to
using '['. Type
?'['
or
help('[')

-Don

--
Don MacQueen

Lawrence Livermore National Laboratory
7000 East Ave., L-627
Livermore, CA 94550
925-423-1062

On 7/23/13 4:22 AM, "Eric TRAVAGLINI"
<Eric.TRAVAGLINI at crealp.vs.ch> wrote:

>Hello,
>
>I used some other langages as Matlab and i just began with R,
and i need
>help with data structure.
>
>Here is my code
>
>"
>fct_echant_hist <- function ( my_echant, my_vitesse, my_hist,
my_summary)
>{
>	  list (my_echant = my_echant,
>		my_vitesse = my_vitesse,
>		my_hist = my_hist,
>		my_summary = my_summary)}
>
>
>my_echant_hist <- replicate(dim(pas)[1], fct_echant_hist(0L,
>			   0L,
>
matrix(nrow=length(my_breaks),ncol=1),
>			   matrix(nrow=6,ncol=1)),
>	   simplify=FALSE)
>"
>Is it possible to acces to all data of my_vitesse ?
>
>
>to acces to the my_vitesse of the first record i write
>my_echant_hist[[1]][[2]]
>
>I try something like that without succes :
>my_echant_hist[[]][[2]] or
>my_echant_hist[[:]][[2]] or
>my_echant_hist[[;]][[2]]
>
>
>Thanks a lot
>
>Eric ./.
>
>P:S Sorry for my English

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

```