On 05/08/2011 12:05 PM, zhenjiang xu wrote:
Hi R users,
I have a list:
> x
$A
[1] "a" "b" "c"
$B
[1] "b" "c"
$C
[1] "c"
I want to convert it to a lowercase-to-uppercase list like this:
> y
$a
[1] "A"
$b
[1] "A" "B"
$c
[1] "A" "B" "C"
In a word, I want to reverse the list names and the elements under
each list name. Is there any quick way to do that? Thanks
I interpreted this question differently from the others, and your
example is ambiguous as to which is the right interpretation. I thought
you wanted to swap names and elements, so
> x <- list(A=c("d", "e", "f"), B=c("d", "e"), C=c("d"))
> x
$A
[1] "d" "e" "f"
$B
[1] "d" "e"
$C
[1] "d"
would become
> list(d=c("A", "B", "C"), e=c("A", "B"), f="A")
$d
[1] "A" "B" "C"
$e
[1] "A" "B"
$f
[1] "A"
I don't know a slick way to do this; I'd just do it by brute force,
looping over the names of x.
Duncan Murdoch
______________________________________________
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.