我有一个数据框,大部分情况下每行只有一条观察记录。然而,有些行有多个数值:
# A tibble: 3 x 2
`number` abilities
<dbl> <chr>
1 51 b1261
2 57 d710
3 57 b1301; d550
structure(list(`number` = c(51, 57, 57), abilities = c("b1261",
"d710", "b1301; d550")), .Names = c("number", "abilities"
), row.names = c(NA, -3L), class = c("tbl_df", "tbl", "data.frame"
))
我希望得到以下内容:
# A tibble: 3 x 2
`number` abilities
<dbl> <chr>
1 51 b1261
2 57 d710
3 57 d550
4 57 b1301
把内容用分号分隔开是比较简单的,但我不确定如何轻松地添加新行,特别是因为能力可能包含多个值。
这与R将分号分隔的列拆分为行非常相似,但不需要删除重复项。
sep=";\\s+"
,否则最后一个条目将在开头有一个空格。 - Marius