【问题标题】:dplyr repeat rows but not in a successively order [duplicate]dplyr 重复行但不是按顺序[重复]
【发布时间】:2021-11-25 09:26:22
【问题描述】:

我有一个这样的数据框:

data <- tibble(var = c("a", "b", "c"))


 var  
  <chr>
1 a    
2 b    
3 c 

现在我想重复每行三遍,所以我运行了这段代码

data <- tibble(var = c("a", "b", "c")) %>% 
  slice(rep(1:n(), each = 3))

结果是这样的:

 var  
  <chr>
1 a    
2 a    
3 a    
4 b    
5 b    
6 b    
7 c    
8 c    
9 c 

但我想要的是这个:

  var  
  <chr>
1 a    
2 b    
3 c    
4 a    
5 b    
6 c    
7 a    
8 b    
9 c

提前致谢,感谢任何形式的帮助。

干杯

【问题讨论】:

  • rep函数中将each替换为times

标签: r dplyr rows repeat


【解决方案1】:
library(dplyr)
#> 
#> Attaching package: 'dplyr'
#> The following objects are masked from 'package:stats':
#> 
#>     filter, lag
#> The following objects are masked from 'package:base':
#> 
#>     intersect, setdiff, setequal, union
data <- tibble(var = c("a", "b", "c"))
bind_rows(rep(list(data), 3))
#> # A tibble: 9 x 1
#>   var  
#>   <chr>
#> 1 a    
#> 2 b    
#> 3 c    
#> 4 a    
#> 5 b    
#> 6 c    
#> 7 a    
#> 8 b    
#> 9 c

reprex package (v2.0.1) 于 2021 年 11 月 25 日创建

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-01-04
    • 2021-12-23
    • 1970-01-01
    • 2019-08-09
    • 2018-01-26
    • 1970-01-01
    • 1970-01-01
    • 2013-04-22
    相关资源
    最近更新 更多