【发布时间】:2019-06-18 16:27:45
【问题描述】:
我有一个数据框,其中两列代表日期范围的开始和结束。所以:
df <- data.frame(var=c("A", "B"), start_year=c(2000, 2002), end_year=c(2005, 2004))
> df
var start_year end_year
1 A 2000 2005
2 B 2002 2004
我想创建一个新的数据框,其中每个 start_year 和 end_year 之间的值都有一行,对于每个 var。
所以结果应该是这样的:
> newdf
var year
1 A 2000
2 A 2001
3 A 2002
4 A 2003
5 A 2004
6 A 2005
7 B 2002
8 B 2003
9 B 2004
理想情况下,这将涉及 tidyverse 中的某些内容。我一直在用dplyr::group_by 和tidyr::gather 尝试不同的东西,但我没有任何运气。
【问题讨论】: