首页 > 解决方案 > R将列表转换为连续元素对

问题描述

与清单

lst <- list("a","b","c","a","b","b")

我正在寻找一种转换,列出列表中所有可能的继任者对

a b    ( 1st and 2nd elements)
b c    ( 2nd and 3rd elements)
c a    ( 3rd and 4th elements)
a b    ( 4th and 5th elements)
b b    ( 5th and 6th elements)

所以当列表包含 N 个元素时,我期待 N-1 对 - Thx

标签: r

解决方案


你可以做...

Map(c, head(lst, -1), tail(lst, -1))

[[1]]
[1] "a" "b"

[[2]]
[1] "b" "c"

[[3]]
[1] "c" "a"

[[4]]
[1] "a" "b"

[[5]]
[1] "b" "b"

或者,...

embed(lst, 2)

     [,1] [,2]
[1,] "b"  "a" 
[2,] "c"  "b" 
[3,] "a"  "c" 
[4,] "b"  "a" 
[5,] "b"  "b" 

推荐阅读