我有一個向量列表(如下所示)。我想知道向量的每個元素在哪個列表元素中。換句話說,我想反轉列表以創建一個新列表,其中names
取自矢量。元素作爲列表名稱和列表名稱作爲列表中的元素?
這樣做的最佳方法是什麼?
lst <- list(a=c(2, 3, 6, 10, 15, 17), b=c(4, 6, 9, 7, 6, 4, 3, 10),
c=c(9, 2, 1, 4, 3), d=c(3, 6, 17))
lst
$a
[1] 2 3 6 10 15 17
$b
[1] 4 6 9 7 6 4 3 10
$c
[1] 9 2 1 4 3
$d
[1] 3 6 17
我想獲得以下答案。
$`1`
[1] "c"
$`10`
[1] "a" "b"
$`15`
[1] "a"
$`17`
[1] "a" "d"
$`2`
[1] "a" "c"
$`3`
[1] "a" "b" "c" "d"
$`4`
[1] "b" "b" "c"
$`6`
[1] "a" "b" "b" "d"
$`7`
[1] "b"
$`9`
[1] "b" "c"
聰明地使用'unstack'。 +1 – A5C1D2H2I1M1N2O1R2T1
@Matthew謝謝。它工作和簡單。 – BioChemoinformatics
我不太明白'lapply(lst,as.vector)'的含義。至少在這個例子中,你可以用lst代替,沒有什麼會改變。 – Dason