2017-02-04 9 views
1

なぜ、私は日付の再構成に問題があるのか​​教えてもらえますか?日付の長い方から長い方への変形 - R

#Data frame 
date = c("01/03/15", "03/04/12", "07/21/16","09/08/16") 
id = c(1,1,2,2) 
df = data.frame(id,date) 

#Convert to date 
df$date <- as.Date(df$date, "%m/%d/%y") 

#Reshape 
library(reshape) 
a <- reshape(df, idvar = "id", timevar = "date", direction = "wide") 

ここに:私はここから行きたいあなたの助けのための

#Final date frame 
date.2 = c("03/04/12", "09/08/16") 
date.1 = c("01/03/15", "07/21/16") 
id = c(1,2) 
df = data.frame(id,date.1,date.2) 

感謝を。

答えて

1

我々はdcast

library(data.table) 
dcast(setDT(df), id~paste0("date.", rowid(id)), value.var = "date") 
# id  date.1  date.2 
#1: 1 2015-01-03 2012-03-04 
#2: 2 2016-07-21 2016-09-08 

それとも@akrun tidyverse

library(dplyr) 
library(tidyr) 
df %>% 
    group_by(id) %>% 
    mutate(i1 = paste0("date.", row_number())) %>% 
    spread(i1, date) 
+0

感謝を使用して使用することができます。好奇心が強い、変身しないで日付で動作しますか? – richiepop2

+0

@ nchiepop2あなたは 'reshape'関数を意味しました。そのためには、シーケンス列が必要です – akrun

関連する問題