如何在艰难的数据框架上使用 melt 和 dcast

how to use melt and dcast on tough data frame

我有一个数据框,每个单元格都有一个值,但我的最后一列是一个列表。 例子。这里有 3 列。 X 和 Y 列在每一行中有一个值。但 Z 列实际上是一个列表。每个单元格中可以有多个值。

      X Y    Z
    1 a d  h, i, j
    2 b e  j, k
    3 c f  l, m, n, o

我需要创建这个:

  X Y    Z
 1 a d  h
 2 a d  i
 3 a d  j
 4 b e  j
 4 b e  k
 5 c f  l
 6 c f  m
 7 c f  n
 8 c f  o

谁能帮我解决这个问题?我不确定如何为此使用 melt 或 dcast 或任何其他函数。

谢谢。

unnest 来自 tidyr 作品

library(tidyr)
unnest(dat, Z)