<分区>
我目前有一个包含数量的表格。
有没有办法弄到这张 table ?
我需要分解数量并有那么多行。
谢谢!!!!
标签 r
<分区>
我目前有一个包含数量的表格。
有没有办法弄到这张 table ?
我需要分解数量并有那么多行。
谢谢!!!!
最佳答案
已更新 现在我们已经将分离的折叠值存储到一个新列中:
library(dplyr)
library(tidyr)
df %>%
group_by(ID) %>%
uncount(Quantity, .remove = FALSE) %>%
mutate(NewQ = 1)
# A tibble: 7 x 4
# Groups: ID [4]
ID Code Quantity NewQ
<int> <chr> <int> <dbl>
1 1 A 1 1
2 2 B 3 1
3 2 B 3 1
4 2 B 3 1
5 3 C 2 1
6 3 C 2 1
7 4 D 1 1
已更新
如果我们选择不使用折叠值替换现有的 Quantity
列。
df %>%
group_by(ID) %>%
mutate(NewQ = ifelse(Quantity != 1, paste(rep(1, Quantity), collapse = ", "),
as.character(Quantity))) %>%
separate_rows(NewQ) %>%
mutate(NewQ = as.numeric(NewQ))
# A tibble: 7 x 4
# Groups: ID [4]
ID Code Quantity NewQ
<int> <chr> <int> <dbl>
1 1 A 1 1
2 2 B 3 1
3 2 B 3 1
4 2 B 3 1
5 3 C 2 1
6 3 C 2 1
7 4 D 1 1
关于r - 根据列中的数字创建新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67633031/