# [R] strange list structure question

markleeds at verizon.net markleeds at verizon.net
Tue Nov 4 01:56:50 CET 2008

```my problem is more complex than below but I think below can suffice. i
have a list and the name of it at the top level is GGG.  so, if i do an
lapply and operate on lower components in the sublist, then I can do as
shown in EXAMPLE 1 and what will come back will be named GGG at the top
level.

but, suppose that , the function inside the lapply function was more
complex and i wanted to actually use "GGG" in the function but also
return it at the top level. I can't figure a way to do both things:

A) return the name GGG  from the lapply

and

B) use the name GGG  in the function that is called inside the lapply ?

Thanks for any suggestions on doing both ? I always think that I
understand lists and then I always end up finding a new problem that i

# EXAMPLE ONE

dummylist <- list(list(x=1,y=2,z=3))
names(dummylist) <- "GGG"
print(dummylist)
print(str(dummylist))

# THIS RETURNS THE NAME GGG AT THE TOP LEVEL
one <- lapply(dummylist, function(.sublist) {
lapply(1:3, function(.index) {  # could use a for loop here or
whatever. it doesn't matter
.sublist[[.index]] + 2
})
})

print(one)
print(str(one))
print(names(one))

# EXAMPLE TWO

# THIS LETS ME USE THE NAME BUT THEN IT DOESN"T GET RETURNED
two <- lapply(1:length(dummylist[]),function(.index) {
temp <- dummylist[][[.index]] + 2
names(temp) <- names(dummylist)   # DUMB USAGE JUST TO
SHOW USAGE
temp
})

print(two)
print(str(two))
print(names(two))

```