如何解决寻找将R df中的行拆分为多行的建议
我有一个具有以下结构的数据框。
df <- data.frame(x = c(1,9),y = c(2,z = c(4,id_1 = c(5,2),id_2 = c(6,3),id_3 = c(8,7),d1 = c(7,44),d2 = c(8,55),d3 = c(0,76),d4 = c(8,0))
这是我最终的预期输出
df_out <- data.frame(x = c(1,1,9,2,4,id = c(5,6,8,3,7,44,55,76,0))
解决方法
这项工作:
> library(dplyr)
> library(tidyr)
> df %>% pivot_longer(cols = c(id_1,id_2,id_3),values_to = 'id') %>% select(-name) %>% relocate(1:3,8,4:7)
# A tibble: 6 x 8
x y z id d1 d2 d3 d4
<dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
1 1 2 4 5 7 8 0 8
2 1 2 4 6 7 8 0 8
3 1 2 4 8 7 8 0 8
4 9 9 9 2 44 55 76 0
5 9 9 9 3 44 55 76 0
6 9 9 9 7 44 55 76 0
>
使用的数据:
> dput(df)
structure(list(x = c(1,9),y = c(2,z = c(4,id_1 = c(5,2),id_2 = c(6,3),id_3 = c(8,7),d1 = c(7,44),d2 = c(8,55),d3 = c(0,76),d4 = c(8,0)),row.names = c(NA,-2L),class = c("tbl_df","tbl","data.frame"))
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。