gpt4 book ai didi

r - 在 r 中创建一个基于其他列自动递增的列

转载 作者:行者123 更新时间:2023-12-04 02:22:08 26 4
gpt4 key购买 nike

我的数据框有客户 ID、产品和日期。我需要创建一个列,每次 customerID 或日期更改时都会生成一个交易 ID。

我的数据框目前看起来像:

  1. CustomerID-Product--date
  2. 23------------abv--------12-12-14
  3. 23------------gfs--------12-12-14
  4. 18-------------生日--------12-12-14
  5. 52------------wer--------14-12-14
  6. 23------------qwe--------16-12-14

我需要使用 r 填充 transactionID 列

  1. CustomerID-Product--date------------transactionID
  2. 23------------abv--------12-12-14----1
  3. 23------------gfs--------12-12-14----1
  4. 18------------gra--------12-12-14----2
  5. 52------------wer--------14-12-14----3
  6. 23------------qwe------16-12-14----4

我有一个 csv 文件中的数据。我无法在 excel 中创建此列,因为文件太大,excel 无法打开整个文件。

感谢您的帮助!

最佳答案

根据您对我评论的回复,您可能还对“data.table”中的 .GRP 感兴趣:

library(data.table)
## In case rows get out of order
DT <- as.data.table(df, keep.rownames = TRUE)
DT[, transactionID := .GRP, by = list(CustomerID, date)][]
rn CustomerID Product date transactionID
1: 1 23 abv 12-12-14 1
2: 2 23 gfs 12-12-14 1
3: 3 18 gra 12-12-14 2
4: 4 52 wer 14-12-14 3
5: 5 23 qwe 16-12-14 4

关于r - 在 r 中创建一个基于其他列自动递增的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27539764/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com