转换或转换列表

时间:2014-06-29 17:13:17

标签: r

输入列表是:

  $A
[1] 25

  $B
[1] 22

  $C
 [1] 25

 $D
 [1] 26
 ----

需要将其转换为

$25
[1] "A" "C"

$22
[1] "B"

$26
[1] "D"

如何更改分组?请帮帮我。

1 个答案:

答案 0 :(得分:5)

如果您的list被称为“L”(例如下面的例子),请尝试:

L <- list(A = 25, B = 22, C = 25, D = 26)
split(names(L), unlist(L))
# $`22`
# [1] "B"
# 
# $`25`
# [1] "A" "C"
# 
# $`26`
# [1] "D"

您也可以尝试with(stack(L), split(as.character(ind), values))