我在处理 R 中的某些数据时遇到问题。我有一个包含信息的数据框。与客户交易有关。我提取最小日期如下,
hold <- (lapply(with(train_train, split(date,id)),min)) # minimum date
给我以下清单:
head(hold)
#$`15994113`
#[1] "2012-03-02"
#
#$`16203579`
#[1] "2012-03-02"
#
#$`17472223`
#[1] "2012-03-22"
然后我想要做的是获取为每个 id 返回的日期,并将其合并回包含每个 id 的其他相关变量的数据框。我试图这样做;
hold <- as.data.frame(unlist(hold))
hold <- as.data.frame(cbind(row.names(hold),hold[,1]))
names(hold) <- c('id', 'mindate')
transactions.temp <- merge(x = transactions.pro, y = hold, by = 'id')
但是,绑定破坏了日期格式,我无法弄清楚如何获得“id”“mindate”的数据结构,这将使我能够将其合并到我的主数据集中,如下所示;
> head(transactions.pro)
id totaltransactions totalspend meanspend
1: 100007447 1096 6644.88 6.06284671532847
2: 100017875 348 992.29 2.85140804597701
3: 100051423 646 2771.43 4.29013931888545
4: 1000714152 2370 10509.08 4.43421097046414
5: 1002116097 1233 4158.51 3.37267639902676
6: 1004404618 754 2978.15 3.94980106100796
您提供的任何建议将不胜感激。谢谢!