R 如何使用date将长数据集折叠为宽数据集

R 如何使用date将长数据集折叠为宽数据集,r,dataframe,reshape2,R,Dataframe,Reshape2,我是R的新手。我想使用date将数据折叠成一行。下面是我的原始数据集,共有三列。两行ID相同,第一次订阅开始日期为2017-08-20,第一次订阅结束日期为2018-09-10。下一次订阅开始日期为2019-05-10,结束日期为NA(随着订阅的进行) ID | Sbscrption|strt|u date | Sbscription|u end|u date 1234 | 2017-08-20 | 2018-09-10 1234 | 2019-05-10 | NA 我想看一行而不是两行的结果。

我是R的新手。我想使用date将数据折叠成一行。下面是我的原始数据集,共有三列。两行ID相同,第一次订阅开始日期为2017-08-20,第一次订阅结束日期为2018-09-10。下一次订阅开始日期为2019-05-10,结束日期为NA(随着订阅的进行)

ID | Sbscrption|strt|u date | Sbscription|u end|u date

1234 | 2017-08-20 | 2018-09-10

1234 | 2019-05-10 | NA

我想看一行而不是两行的结果。两个新列将分别为SBSRiption_strt_date1和Sbscription_end_date1。新列SBSRiption_strt_date1将显示2019-05-10,Sbscrption_end_date1将显示NA

ID |说明|开始日期1 |说明|开始日期1 |说明|结束日期1 |说明|结束日期1

1234 | 2017-08-20 | 2018-09-10 | 2019-05-10 | NA


我想把两排挤成一排。非常感谢你的帮助

这是一个带有
重塑

reshape(transform(df,ids = 1:nrow(df)),direction = "wide",idvar = "ID",timevar = "ids")
以致

  ID Enrollement_date.1 Enrollement_End_date.1 Enrollement_date.2
1 XX         2007-02-01             2017-09-01         2018-09-01
  Enrollement_End_date.2
1                   <NA>
ID注册日期。1注册结束日期。1注册日期。2
1 XX 2007-02-01 2017-09-01 2018-09-01
报名截止日期。2
1.
数据

df <- structure(list(ID = c("XX", "XX"), Enrollement_date = c("2007-02-01", 
"2018-09-01"), Enrollement_End_date = c("2017-09-01", NA)), class = "data.frame", row.names = c(NA, 
-2L))

df这是一个基本的R选项,带有
重塑

reshape(transform(df,ids = 1:nrow(df)),direction = "wide",idvar = "ID",timevar = "ids")
以致

  ID Enrollement_date.1 Enrollement_End_date.1 Enrollement_date.2
1 XX         2007-02-01             2017-09-01         2018-09-01
  Enrollement_End_date.2
1                   <NA>
ID注册日期。1注册结束日期。1注册日期。2
1 XX 2007-02-01 2017-09-01 2018-09-01
报名截止日期。2
1.
数据

df <- structure(list(ID = c("XX", "XX"), Enrollement_date = c("2007-02-01", 
"2018-09-01"), Enrollement_End_date = c("2017-09-01", NA)), class = "data.frame", row.names = c(NA, 
-2L))
df